<template>
  <div class="page_root" :key="queryUpdateFlag" data-page-name="项目列表" data-page-identification="n_lnsjhng1nl">
    <a-spin :spinning="pageLoading.loading" :tip="pageLoading.tip">
      <!-- begin vid_g58dms2vll 工时投入详情 -->
      <a-modal
        class="vid_g58dms2vll"
        v-model:visible="vid_g58dms2vll_props.visible"
        :footer="null"
        :centered="true"
        :title="'工时投入详情'"
        :maskClosable="false"
        :width="800"
        @cancel="handle_vid_g58dms2vll_cancel"
        @ok="handle_vid_g58dms2vll_ok"
      >
        <!-- begin vid_ygns5994y3 容器_rpxq1q4dtv -->
        <al-box class="vid_ygns5994y3">
          <!-- begin vid_u3y9135udo 表格_oamew7p8wf -->
          <!-- 表格_oamew7p8wf -->
          <a-table
            class="vid_u3y9135udo"
            :editRowSaveLoading="vid_u3y9135udo_props.editRowSaveLoading"
            :sorter="vid_u3y9135udo_props.sorter"
            :currentRow="vid_u3y9135udo_props.currentRow"
            :selectedRowList="vid_u3y9135udo_props.selectedRowList"
            :data-source="vid_u3y9135udo_options()"
            @change="handle_vid_u3y9135udo_change"
            :columns="vid_u3y9135udo_columns"
            :pagination="vid_u3y9135udo_pagination"
            row-key="id"
            @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_u3y9135udo')"
            :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
            :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
          >
            <template #headerCell="{ title, column }">
              <TableHeaderCell :title="title" :column="column" />
            </template>
            <template #bodyCell="{ text, column, record, index }">
              <!-- 序号列 -->
              <template v-if="column && column.dataIndex === 'vid_u3y9135udo_serialNumber'">
                {{ index + 1 }}
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务参与人"} 列内容 -->
              <template v-if="column.dataIndex === 'custom1' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_u3y9135udo_props.boundaryValueMap"
                  :dataSource="vid_u3y9135udo_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"预计投入工时"} 列内容 -->
              <template v-if="column.dataIndex === 'custom2' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_u3y9135udo_props.boundaryValueMap"
                  :dataSource="vid_u3y9135udo_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"实际投入工时"} 列内容 -->
              <template v-if="column.dataIndex === 'custom3' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_u3y9135udo_props.boundaryValueMap"
                  :dataSource="vid_u3y9135udo_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"工时投入状态"} 列内容 -->
              <template v-if="column.dataIndex === 'custom4' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_u3y9135udo_props.boundaryValueMap"
                  :dataSource="vid_u3y9135udo_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
            </template>
          </a-table>
          <!-- end vid_u3y9135udo 表格_oamew7p8wf -->
        </al-box>
        <!-- end vid_ygns5994y3 容器_rpxq1q4dtv -->
        <!-- begin vid_hxq20s6hb9 容器_008ytx538d -->
        <al-box class="vid_hxq20s6hb9">
          <!-- begin vid_ili766j6wi 按钮_qox9rjm5el -->
          <a-button class="vid_ili766j6wi" @click="handle_vid_ili766j6wi_click"> 关闭 </a-button>
          <!-- end vid_ili766j6wi 按钮_qox9rjm5el -->
        </al-box>
        <!-- end vid_hxq20s6hb9 容器_008ytx538d -->
      </a-modal>
      <!-- end vid_g58dms2vll 工时投入详情 -->
      <!-- begin vid_2yyk1fkj9d 请确认该任务完成的具体日期 -->
      <a-modal
        class="vid_2yyk1fkj9d"
        v-model:visible="vid_2yyk1fkj9d_props.visible"
        :centered="true"
        :title="'请确认该任务完成的具体日期'"
        :maskClosable="false"
        @cancel="handle_vid_2yyk1fkj9d_cancel"
        @ok="handle_vid_2yyk1fkj9d_ok"
      >
        <!-- begin vid_nc1m9qv5qh 表单容器_s90e6fanr7 -->
        <a-form class="vid_nc1m9qv5qh" :model="v_6kxszeg3gz" :formModel="vid_nc1m9qv5qh_props.formModel">
          <!-- begin vid_dsff8lz7p6 表单项容器_v4tsq6n15r -->
          <a-form-item name="k_l6k3h83clt" :rules="v_6kxszeg3gz_rules[`k_l6k3h83clt`]" class="vid_dsff8lz7p6" :label-col='{"span":4}' :wrapper-col='{"span":20}'>
            <!-- begin vid_hliu1bi8cg 日期_sq0u5qukmk -->
            <a-date-picker
              class="vid_hliu1bi8cg"
              :getPopupContainer="(node) => node.parentNode"
              v-model:value="v_6kxszeg3gz.k_l6k3h83clt"
              :format="'YYYY-MM-DD HH:mm:ss'"
              :valueFormat="'YYYY-MM-DD HH:mm:ss'"
              :showTime="vid_hliu1bi8cg_props.showTime"
            >
            </a-date-picker>
            <!-- end vid_hliu1bi8cg 日期_sq0u5qukmk -->
            <template #label>
              <!-- begin vid_xd1gwqhu3i 简单文本_lsqvdf50c6 -->
              <span class="vid_xd1gwqhu3i"> 结束日期 </span>
              <!-- end vid_xd1gwqhu3i 简单文本_lsqvdf50c6 -->
            </template>
          </a-form-item>
          <!-- end vid_dsff8lz7p6 表单项容器_v4tsq6n15r -->
        </a-form>
        <!-- end vid_nc1m9qv5qh 表单容器_s90e6fanr7 -->
      </a-modal>
      <!-- end vid_2yyk1fkj9d 请确认该任务完成的具体日期 -->
      <!-- begin vid_9f1tbhl4h8 新增任务 -->
      <a-modal
        class="vid_9f1tbhl4h8"
        v-model:visible="vid_9f1tbhl4h8_props.visible"
        :centered="true"
        :title="'新增任务'"
        :maskClosable="false"
        :width="800"
        :okText="'保存'"
        @cancel="handle_vid_9f1tbhl4h8_cancel"
        @ok="handle_vid_9f1tbhl4h8_ok"
      >
        <!-- begin vid_j5qyf54gv6 表单容器_0f5po10p1t -->
        <a-form class="vid_j5qyf54gv6" :model="b_9uarvtwtzo" :formModel="vid_j5qyf54gv6_props.formModel">
          <!-- begin vid_7669jvrfsp 布局容器_vgwj12gvf9 -->
          <a-row class="vid_7669jvrfsp" :slots="'24'">
            <a-col :span="24">
              <!-- begin vid_makauolruv 容器_00d3hurn5w -->
              <al-box class="vid_makauolruv">
                <!-- begin vid_n7h6p0lgdd 布局容器_ndf4nps0pe -->
                <a-row class="vid_n7h6p0lgdd" :slots="'11:11:11:11:24:'">
                  <a-col :span="11">
                    <!-- begin vid_opappgjpb9 表单项容器_firlwf0n6r -->
                    <a-form-item name="a_g3q11ormum" :rules="b_9uarvtwtzo_rules[`a_g3q11ormum`]" class="vid_opappgjpb9" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                      <!-- begin vid_jhmsp1omgn 下拉框_rjaf5qkatt -->
                      <a-select
                        class="vid_jhmsp1omgn"
                        :getPopupContainer="(node) => node.parentNode"
                        v-model:value="b_9uarvtwtzo.a_g3q11ormum"
                        :showArrow="true"
                        :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                        :dropdownMatchSelectWidth="true"
                        :showSearch="true"
                        :placeholder="'请选择'"
                        :searchValue="vid_jhmsp1omgn_props.searchValue"
                        :selected="vid_jhmsp1omgn_props.selected"
                        :options="vid_jhmsp1omgn_options()"
                        @change="handle_vid_jhmsp1omgn_change"
                        @search="handle_vid_jhmsp1omgn_search"
                      >
                      </a-select>
                      <!-- end vid_jhmsp1omgn 下拉框_rjaf5qkatt -->
                      <template #label>
                        <!-- begin vid_k04cuvdvs5 简单文本_k6bcrfmdwi -->
                        <span class="vid_k04cuvdvs5"> 里程碑名称 </span>
                        <!-- end vid_k04cuvdvs5 简单文本_k6bcrfmdwi -->
                      </template>
                    </a-form-item>
                    <!-- end vid_opappgjpb9 表单项容器_firlwf0n6r -->
                  </a-col>
                  <a-col :span="11">
                    <!-- begin vid_2r7pzw6dub 表单项容器_1isij5mrel -->
                    <a-form-item name="u_n1sphyrteu" :rules="b_9uarvtwtzo_rules[`u_n1sphyrteu`]" class="vid_2r7pzw6dub" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                      <!-- begin vid_jljbkfk7m8 下拉框_ekk1m8se1u -->
                      <a-select
                        class="vid_jljbkfk7m8"
                        :getPopupContainer="(node) => node.parentNode"
                        v-model:value="b_9uarvtwtzo.u_n1sphyrteu"
                        :showArrow="true"
                        :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                        :dropdownMatchSelectWidth="true"
                        :showSearch="true"
                        :placeholder="'请选择'"
                        :searchValue="vid_jljbkfk7m8_props.searchValue"
                        :selected="vid_jljbkfk7m8_props.selected"
                        :options="vid_jljbkfk7m8_options()"
                        @change="handle_vid_jljbkfk7m8_change"
                        @search="handle_vid_jljbkfk7m8_search"
                      >
                      </a-select>
                      <!-- end vid_jljbkfk7m8 下拉框_ekk1m8se1u -->
                      <template #label>
                        <!-- begin vid_s6z9x5kya2 简单文本_x1buyxawd6 -->
                        <span class="vid_s6z9x5kya2"> 关联项目阶段 </span>
                        <!-- end vid_s6z9x5kya2 简单文本_x1buyxawd6 -->
                      </template>
                    </a-form-item>
                    <!-- end vid_2r7pzw6dub 表单项容器_1isij5mrel -->
                  </a-col>
                  <a-col :span="11">
                    <!-- begin vid_wkpd5oce4h 简单文本_tts6uq26lb -->
                    <span class="vid_wkpd5oce4h"> 任务编辑 </span>
                    <!-- end vid_wkpd5oce4h 简单文本_tts6uq26lb -->
                  </a-col>
                  <a-col :span="11"> </a-col>
                  <a-col :span="24">
                    <!-- begin vid_18gsmb9428 表单项容器_wguc4ri2hb -->
                    <a-form-item name="h_607ei7vdj0" :rules="b_9uarvtwtzo_rules[`h_607ei7vdj0`]" class="vid_18gsmb9428" :label-col='{"span":24}' :wrapper-col='{"span":24}'>
                      <!-- begin vid_38e3vd3jol 动作列表_cvv0c3wksr -->
                      <al-action-list
                        data-field-key="h_607ei7vdj0"
                        class="vid_38e3vd3jol"
                        v-model:dataSource="b_9uarvtwtzo.h_607ei7vdj0"
                        v-model:extendDataSource="vid_38e3vd3jol_props.dataSource"
                        v-model:current="vid_38e3vd3jol_props.current"
                        v-model:currentIndex="vid_38e3vd3jol_props.currentIndex"
                        :deleteLineHeight="60"
                      >
                        <template #default="vid_38e3vd3jol_dataItem">
                          <!-- begin vid_wxa8j32blp 布局容器_lja7knr3qz -->
                          <a-row :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_wxa8j32blp" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_2tv9eo1f0a 表单项容器_r37w2gf5ob -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`d_iy2fgs0wih`)"
                                :rules="b_9uarvtwtzo_rules[`d_iy2fgs0wih`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_2tv9eo1f0a"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_sjijnlj9z7 输入框_74d267xhft -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_sjijnlj9z7"
                                  v-model:value="vid_sjijnlj9z7_props.value"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_sjijnlj9z7 输入框_74d267xhft -->
                                <template #label>
                                  <!-- begin vid_47puduy19r 简单文本_25u7sh7jwt -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_47puduy19r"> 任务名称 </span>
                                  <!-- end vid_47puduy19r 简单文本_25u7sh7jwt -->
                                </template>
                              </a-form-item>
                              <!-- end vid_2tv9eo1f0a 表单项容器_r37w2gf5ob -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_1w2oe76z47 表单项容器_rkwgib9z1x -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`y_vjlky54sp8`)"
                                :rules="b_9uarvtwtzo_rules[`y_vjlky54sp8`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_1w2oe76z47"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_sth9745oox 下拉复选框_v330tjc5xu -->
                                <a-select
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_sth9745oox"
                                  :mode="'multiple'"
                                  :getPopupContainer="(node) => node.parentNode"
                                  :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                                  v-model:value="vid_sth9745oox_props.value"
                                  :showArrow="true"
                                  :dropdownMatchSelectWidth="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :selected="vid_sth9745oox_props.selected"
                                  :options="vid_sth9745oox_options()"
                                  @change="handle_vid_sth9745oox_change"
                                >
                                </a-select>
                                <!-- end vid_sth9745oox 下拉复选框_v330tjc5xu -->
                                <template #label>
                                  <!-- begin vid_t3bihy5qto 简单文本_3lmv492pxj -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_t3bihy5qto"> 依赖任务 </span>
                                  <!-- end vid_t3bihy5qto 简单文本_3lmv492pxj -->
                                </template>
                              </a-form-item>
                              <!-- end vid_1w2oe76z47 表单项容器_rkwgib9z1x -->
                            </a-col>
                          </a-row>
                          <!-- end vid_wxa8j32blp 布局容器_lja7knr3qz -->
                          <!-- begin vid_93ho8xd2c9 布局容器_0ausjfpgzf -->
                          <a-row :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_93ho8xd2c9" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_4x40t1xe6m 表单项容器_4gmagq1kmm -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`v_9cashjmttj`)"
                                :rules="b_9uarvtwtzo_rules[`v_9cashjmttj`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_4x40t1xe6m"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_op95sd13gl 下拉框_vsf6v1rdp0 -->
                                <a-select
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_op95sd13gl"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_op95sd13gl_props.value"
                                  :showArrow="true"
                                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                  :dropdownMatchSelectWidth="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :searchValue="vid_op95sd13gl_props.searchValue"
                                  :selected="vid_op95sd13gl_props.selected"
                                  :options="vid_op95sd13gl_options()"
                                  @change="handle_vid_op95sd13gl_change"
                                  @search="handle_vid_op95sd13gl_search"
                                >
                                </a-select>
                                <!-- end vid_op95sd13gl 下拉框_vsf6v1rdp0 -->
                                <template #label>
                                  <!-- begin vid_7yks7bug89 简单文本_adevfsm57x -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_7yks7bug89"> 任务负责人 </span>
                                  <!-- end vid_7yks7bug89 简单文本_adevfsm57x -->
                                </template>
                              </a-form-item>
                              <!-- end vid_4x40t1xe6m 表单项容器_4gmagq1kmm -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_onwzbw2ipo 表单项容器_cihjymrdqk -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`k_x1yzt3s459`)"
                                :rules="b_9uarvtwtzo_rules[`k_x1yzt3s459`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_onwzbw2ipo"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_oecxkhj717 输入框_4ktkd8ae13 -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_oecxkhj717"
                                  v-model:value="vid_oecxkhj717_props.value"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_oecxkhj717 输入框_4ktkd8ae13 -->
                                <template #label>
                                  <!-- begin vid_jmsey8p1td 任务预算 -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_jmsey8p1td"> 任务预算 </span>
                                  <!-- end vid_jmsey8p1td 任务预算 -->
                                </template>
                              </a-form-item>
                              <!-- end vid_onwzbw2ipo 表单项容器_cihjymrdqk -->
                            </a-col>
                          </a-row>
                          <!-- end vid_93ho8xd2c9 布局容器_0ausjfpgzf -->
                          <!-- begin vid_waejq7uf9l 布局容器_s2vg9yvrfz -->
                          <a-row :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_waejq7uf9l" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_fkqo7gs441 表单项容器_xnc9susqws -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`b_wfzwbsmtcc`)"
                                :rules="b_9uarvtwtzo_rules[`b_wfzwbsmtcc`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_fkqo7gs441"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_2rjaiz6tyo 日期_mj0l748mk1 -->
                                <a-date-picker
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_2rjaiz6tyo"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_2rjaiz6tyo_props.value"
                                  :valueFormat="'YYYY-MM-DD'"
                                  :placeholder="'请选择'"
                                  :showTime="vid_2rjaiz6tyo_props.showTime"
                                >
                                </a-date-picker>
                                <!-- end vid_2rjaiz6tyo 日期_mj0l748mk1 -->
                                <template #label>
                                  <!-- begin vid_0kdostin6k 简单文本_5d7ymj38at -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_0kdostin6k"> 任务开始时间 </span>
                                  <!-- end vid_0kdostin6k 简单文本_5d7ymj38at -->
                                </template>
                              </a-form-item>
                              <!-- end vid_fkqo7gs441 表单项容器_xnc9susqws -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_vrsykf67k1 表单项容器_joa2ft9ton -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`q_zcd868wwhx`)"
                                :rules="b_9uarvtwtzo_rules[`q_zcd868wwhx`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_vrsykf67k1"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_e27mgsvvcx 日期_zwkk7zb6c5 -->
                                <a-date-picker
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_e27mgsvvcx"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_e27mgsvvcx_props.value"
                                  :valueFormat="'YYYY-MM-DD'"
                                  :placeholder="'请选择'"
                                  :showTime="vid_e27mgsvvcx_props.showTime"
                                >
                                </a-date-picker>
                                <!-- end vid_e27mgsvvcx 日期_zwkk7zb6c5 -->
                                <template #label>
                                  <!-- begin vid_6vblxctpfg 简单文本_7v0azyj8jh -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_6vblxctpfg"> 任务结束时间 </span>
                                  <!-- end vid_6vblxctpfg 简单文本_7v0azyj8jh -->
                                </template>
                              </a-form-item>
                              <!-- end vid_vrsykf67k1 表单项容器_joa2ft9ton -->
                            </a-col>
                          </a-row>
                          <!-- end vid_waejq7uf9l 布局容器_s2vg9yvrfz -->
                          <!-- begin vid_okxp52mdig 布局容器_8pbzxuh9df -->
                          <a-row :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_okxp52mdig" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_677zer492d 表单项容器_v7jiug323n -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`b_8p43whz7fu`)"
                                :rules="b_9uarvtwtzo_rules[`b_8p43whz7fu`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_677zer492d"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_bli3y5dska 下拉框_n1i2b06fw8 -->
                                <a-select
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_bli3y5dska"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_bli3y5dska_props.value"
                                  :showArrow="true"
                                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                  :dropdownMatchSelectWidth="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :searchValue="vid_bli3y5dska_props.searchValue"
                                  :selected="vid_bli3y5dska_props.selected"
                                  :options="vid_bli3y5dska_options()"
                                  @change="handle_vid_bli3y5dska_change"
                                  @search="handle_vid_bli3y5dska_search"
                                >
                                </a-select>
                                <!-- end vid_bli3y5dska 下拉框_n1i2b06fw8 -->
                                <template #label>
                                  <!-- begin vid_mn4njhn93w 任务参与人 -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_mn4njhn93w"> 任务参与人 </span>
                                  <!-- end vid_mn4njhn93w 任务参与人 -->
                                </template>
                              </a-form-item>
                              <!-- end vid_677zer492d 表单项容器_v7jiug323n -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_jtnaunhvxx 表单项容器_yjd8gwijdv -->
                              <a-form-item
                                :name="setSubFormName(vid_38e3vd3jol_dataItem,`d_o1ru1mehtf`)"
                                :rules="b_9uarvtwtzo_rules[`d_o1ru1mehtf`]"
                                :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                class="vid_jtnaunhvxx"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_cxpi0cr22n 输入框_lz5hkw780a -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex"
                                  class="vid_cxpi0cr22n"
                                  v-model:value="vid_cxpi0cr22n_props.value"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_cxpi0cr22n 输入框_lz5hkw780a -->
                                <template #label>
                                  <!-- begin vid_zdtbevt9l7 预计投入工时 -->
                                  <span :data-cycle-index="vid_38e3vd3jol_dataItem.cycleIndex" class="vid_zdtbevt9l7"> 预计投入工时 </span>
                                  <!-- end vid_zdtbevt9l7 预计投入工时 -->
                                </template>
                              </a-form-item>
                              <!-- end vid_jtnaunhvxx 表单项容器_yjd8gwijdv -->
                            </a-col>
                          </a-row>
                          <!-- end vid_okxp52mdig 布局容器_8pbzxuh9df -->
                        </template>
                      </al-action-list>
                      <!-- end vid_38e3vd3jol 动作列表_cvv0c3wksr -->
                    </a-form-item>
                    <!-- end vid_18gsmb9428 表单项容器_wguc4ri2hb -->
                  </a-col>
                  <a-col :span="0"> </a-col>
                </a-row>
                <!-- end vid_n7h6p0lgdd 布局容器_ndf4nps0pe -->
              </al-box>
              <!-- end vid_makauolruv 容器_00d3hurn5w -->
            </a-col>
          </a-row>
          <!-- end vid_7669jvrfsp 布局容器_vgwj12gvf9 -->
        </a-form>
        <!-- end vid_j5qyf54gv6 表单容器_0f5po10p1t -->
      </a-modal>
      <!-- end vid_9f1tbhl4h8 新增任务 -->
      <!-- begin vid_n5ise5idfj 编辑任务 -->
      <a-modal class="vid_n5ise5idfj" v-model:visible="vid_n5ise5idfj_props.visible" :centered="true" :title="'编辑任务'" :maskClosable="false" :width="800" :okText="'保存'">
        <!-- begin vid_6u802x5119 表单容器_pws6pyb1y1 -->
        <a-form class="vid_6u802x5119" :model="c_55lo4f7tu7" :formModel="vid_6u802x5119_props.formModel">
          <!-- begin vid_zfpjtdokyg 布局容器_4fmmo1sqib -->
          <a-row class="vid_zfpjtdokyg" :slots="'24'">
            <a-col :span="24">
              <!-- begin vid_4qy2cm8eyj 容器_aqnwg5tiwd -->
              <al-box class="vid_4qy2cm8eyj">
                <!-- begin vid_vlnjwcg05m 布局容器_10pvw9azdg -->
                <a-row class="vid_vlnjwcg05m" :slots="'24'">
                  <a-col :span="24">
                    <!-- begin vid_r0f4o2vg7s 动作列表_z4f9gufv29 -->
                    <al-action-list
                      data-field-key="n_bmq1shn9d4"
                      class="vid_r0f4o2vg7s"
                      v-model:dataSource="vid_r0f4o2vg7s_props.dataSource"
                      v-model:extendDataSource="vid_r0f4o2vg7s_props.dataSource"
                      v-model:current="vid_r0f4o2vg7s_props.current"
                      v-model:currentIndex="vid_r0f4o2vg7s_props.currentIndex"
                      :deleteLineHeight="60"
                    >
                      <template #default="vid_r0f4o2vg7s_dataItem">
                        <!-- begin vid_psrixokyep 布局容器_3jwwthc77s -->
                        <a-row :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_psrixokyep" :slots="'12:12'">
                          <a-col :span="12">
                            <!-- begin vid_ce7f67zs1k 表单项容器_tnbbv3prvv -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`o_rfhv331ort`)"
                              :rules="c_55lo4f7tu7_rules[`o_rfhv331ort`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_ce7f67zs1k"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_dln9aw4fq9 输入框_bmerpblbk3 -->
                              <a-input
                                autocomplete="off"
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_dln9aw4fq9"
                                v-model:value="vid_dln9aw4fq9_props.value"
                                :placeholder="'请输入'"
                              >
                              </a-input>
                              <!-- end vid_dln9aw4fq9 输入框_bmerpblbk3 -->
                              <template #label>
                                <!-- begin vid_qxatvgtsyl 简单文本_2c327d1fwj -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_qxatvgtsyl"> 任务名称 </span>
                                <!-- end vid_qxatvgtsyl 简单文本_2c327d1fwj -->
                              </template>
                            </a-form-item>
                            <!-- end vid_ce7f67zs1k 表单项容器_tnbbv3prvv -->
                          </a-col>
                          <a-col :span="12">
                            <!-- begin vid_jqg80lhq13 表单项容器_vb6yxsgxpf -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`a_uvg8rfrpnh`)"
                              :rules="c_55lo4f7tu7_rules[`a_uvg8rfrpnh`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_jqg80lhq13"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_1dy1lfxsna 下拉复选框_4xejrjwlp1 -->
                              <a-select
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_1dy1lfxsna"
                                :mode="'multiple'"
                                :getPopupContainer="(node) => node.parentNode"
                                :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                                v-model:value="vid_1dy1lfxsna_props.value"
                                :showArrow="true"
                                :dropdownMatchSelectWidth="true"
                                :showSearch="true"
                                :placeholder="'请选择'"
                                :selected="vid_1dy1lfxsna_props.selected"
                                :options="vid_1dy1lfxsna_options()"
                                @change="handle_vid_1dy1lfxsna_change"
                              >
                              </a-select>
                              <!-- end vid_1dy1lfxsna 下拉复选框_4xejrjwlp1 -->
                              <template #label>
                                <!-- begin vid_b7cwgl458h 简单文本_bxwm432tr8 -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_b7cwgl458h"> 依赖任务 </span>
                                <!-- end vid_b7cwgl458h 简单文本_bxwm432tr8 -->
                              </template>
                            </a-form-item>
                            <!-- end vid_jqg80lhq13 表单项容器_vb6yxsgxpf -->
                          </a-col>
                        </a-row>
                        <!-- end vid_psrixokyep 布局容器_3jwwthc77s -->
                        <!-- begin vid_fq4gkasprm 布局容器_y2azegvymu -->
                        <a-row :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_fq4gkasprm" :slots="'12:12'">
                          <a-col :span="12">
                            <!-- begin vid_18m82x024c 表单项容器_x7okr8niga -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`b_snwd70u8e7`)"
                              :rules="c_55lo4f7tu7_rules[`b_snwd70u8e7`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_18m82x024c"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_f924yn9zv0 下拉框_mqxo6je3zz -->
                              <a-select
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_f924yn9zv0"
                                :getPopupContainer="(node) => node.parentNode"
                                v-model:value="vid_f924yn9zv0_props.value"
                                :showArrow="true"
                                :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                :dropdownMatchSelectWidth="true"
                                :showSearch="true"
                                :placeholder="'请选择'"
                                :searchValue="vid_f924yn9zv0_props.searchValue"
                                :selected="vid_f924yn9zv0_props.selected"
                                :options="vid_f924yn9zv0_options()"
                                @change="handle_vid_f924yn9zv0_change"
                                @search="handle_vid_f924yn9zv0_search"
                              >
                              </a-select>
                              <!-- end vid_f924yn9zv0 下拉框_mqxo6je3zz -->
                              <template #label>
                                <!-- begin vid_4ijvpxe70a 简单文本_8b7vslacmk -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_4ijvpxe70a"> 任务负责人 </span>
                                <!-- end vid_4ijvpxe70a 简单文本_8b7vslacmk -->
                              </template>
                            </a-form-item>
                            <!-- end vid_18m82x024c 表单项容器_x7okr8niga -->
                          </a-col>
                          <a-col :span="12">
                            <!-- begin vid_74t6ylpdvm 表单项容器_ij525gbugf -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`i_urdavmm7ud`)"
                              :rules="c_55lo4f7tu7_rules[`i_urdavmm7ud`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_74t6ylpdvm"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_580yju0fcm 输入框_xw8vnal1d6 -->
                              <a-input
                                autocomplete="off"
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_580yju0fcm"
                                v-model:value="vid_580yju0fcm_props.value"
                                :placeholder="'请输入'"
                              >
                              </a-input>
                              <!-- end vid_580yju0fcm 输入框_xw8vnal1d6 -->
                              <template #label>
                                <!-- begin vid_7mnsmlfa0e 简单文本_gjvcax268f -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_7mnsmlfa0e"> 任务预算 </span>
                                <!-- end vid_7mnsmlfa0e 简单文本_gjvcax268f -->
                              </template>
                            </a-form-item>
                            <!-- end vid_74t6ylpdvm 表单项容器_ij525gbugf -->
                          </a-col>
                        </a-row>
                        <!-- end vid_fq4gkasprm 布局容器_y2azegvymu -->
                        <!-- begin vid_91kmst35oz 布局容器_dunq6gfb2n -->
                        <a-row :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_91kmst35oz" :slots="'12:12'">
                          <a-col :span="12">
                            <!-- begin vid_nzavltd38a 表单项容器_xtv4r562c2 -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`j_lqv494zlku`)"
                              :rules="c_55lo4f7tu7_rules[`j_lqv494zlku`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_nzavltd38a"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_x4abimxw27 日期_cg5hmdi651 -->
                              <a-date-picker
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_x4abimxw27"
                                :getPopupContainer="(node) => node.parentNode"
                                v-model:value="vid_x4abimxw27_props.value"
                                :valueFormat="'YYYY-MM-DD'"
                                :placeholder="'请选择'"
                                :showTime="vid_x4abimxw27_props.showTime"
                              >
                              </a-date-picker>
                              <!-- end vid_x4abimxw27 日期_cg5hmdi651 -->
                              <template #label>
                                <!-- begin vid_bg47m3rezk 简单文本_6hrzcl7yuk -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_bg47m3rezk"> 任务开始时间 </span>
                                <!-- end vid_bg47m3rezk 简单文本_6hrzcl7yuk -->
                              </template>
                            </a-form-item>
                            <!-- end vid_nzavltd38a 表单项容器_xtv4r562c2 -->
                          </a-col>
                          <a-col :span="12">
                            <!-- begin vid_x4lsujv7pj 表单项容器_1drp4i72d4 -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`u_6ozbwpi6ea`)"
                              :rules="c_55lo4f7tu7_rules[`u_6ozbwpi6ea`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_x4lsujv7pj"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_gh5ffic1bz 日期_60oiyldfv4 -->
                              <a-date-picker
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_gh5ffic1bz"
                                :getPopupContainer="(node) => node.parentNode"
                                v-model:value="vid_gh5ffic1bz_props.value"
                                :valueFormat="'YYYY-MM-DD'"
                                :placeholder="'请选择'"
                                :showTime="vid_gh5ffic1bz_props.showTime"
                              >
                              </a-date-picker>
                              <!-- end vid_gh5ffic1bz 日期_60oiyldfv4 -->
                              <template #label>
                                <!-- begin vid_v3ndfzr7t2 简单文本_hpcocv7ml1 -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_v3ndfzr7t2"> 任务结束时间 </span>
                                <!-- end vid_v3ndfzr7t2 简单文本_hpcocv7ml1 -->
                              </template>
                            </a-form-item>
                            <!-- end vid_x4lsujv7pj 表单项容器_1drp4i72d4 -->
                          </a-col>
                        </a-row>
                        <!-- end vid_91kmst35oz 布局容器_dunq6gfb2n -->
                        <!-- begin vid_3xo16u9vki 布局容器_34hos15sxy -->
                        <a-row :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_3xo16u9vki" :slots="'12:12'">
                          <a-col :span="12">
                            <!-- begin vid_9ysvi521ih 表单项容器_lq3y4p0p78 -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`o_987ni38wqu`)"
                              :rules="c_55lo4f7tu7_rules[`o_987ni38wqu`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_9ysvi521ih"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_qqjroo8awh 下拉框_7bgxvuf47g -->
                              <a-select
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_qqjroo8awh"
                                :getPopupContainer="(node) => node.parentNode"
                                v-model:value="vid_qqjroo8awh_props.value"
                                :showArrow="true"
                                :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                :dropdownMatchSelectWidth="true"
                                :showSearch="true"
                                :placeholder="'请选择'"
                                :searchValue="vid_qqjroo8awh_props.searchValue"
                                :selected="vid_qqjroo8awh_props.selected"
                                :options="vid_qqjroo8awh_options()"
                                @change="handle_vid_qqjroo8awh_change"
                                @search="handle_vid_qqjroo8awh_search"
                              >
                              </a-select>
                              <!-- end vid_qqjroo8awh 下拉框_7bgxvuf47g -->
                              <template #label>
                                <!-- begin vid_8bf57ucdw6 任务状态 -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_8bf57ucdw6"> 任务状态 </span>
                                <!-- end vid_8bf57ucdw6 任务状态 -->
                              </template>
                            </a-form-item>
                            <!-- end vid_9ysvi521ih 表单项容器_lq3y4p0p78 -->
                          </a-col>
                          <a-col :span="12">
                            <!-- begin vid_k7bxwftx5i 表单项容器_horsnhffb7 -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`v_cwsj2nxqg4`)"
                              :rules="c_55lo4f7tu7_rules[`v_cwsj2nxqg4`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_k7bxwftx5i"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_s91z0jrn6n 下拉框_mi7kizuf73 -->
                              <a-select
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_s91z0jrn6n"
                                :getPopupContainer="(node) => node.parentNode"
                                v-model:value="vid_s91z0jrn6n_props.value"
                                :showArrow="true"
                                :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                :dropdownMatchSelectWidth="true"
                                :showSearch="true"
                                :placeholder="'请选择'"
                                :searchValue="vid_s91z0jrn6n_props.searchValue"
                                :selected="vid_s91z0jrn6n_props.selected"
                                :options="vid_s91z0jrn6n_options()"
                                @change="handle_vid_s91z0jrn6n_change"
                                @search="handle_vid_s91z0jrn6n_search"
                              >
                              </a-select>
                              <!-- end vid_s91z0jrn6n 下拉框_mi7kizuf73 -->
                              <template #label>
                                <!-- begin vid_mtzlkxq1g1 简单文本_6elkbhu4v9 -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_mtzlkxq1g1"> 任务参与人 </span>
                                <!-- end vid_mtzlkxq1g1 简单文本_6elkbhu4v9 -->
                              </template>
                            </a-form-item>
                            <!-- end vid_k7bxwftx5i 表单项容器_horsnhffb7 -->
                          </a-col>
                        </a-row>
                        <!-- end vid_3xo16u9vki 布局容器_34hos15sxy -->
                        <!-- begin vid_87olkd5s2v 布局容器_u66b8wuuh8 -->
                        <a-row :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_87olkd5s2v" :slots="'12:12'">
                          <a-col :span="12">
                            <!-- begin vid_x31rgplmsg 表单项容器_xsfu2fpmxc -->
                            <a-form-item
                              :name="setSubFormName(vid_r0f4o2vg7s_dataItem,`r_lypj4zjra0`)"
                              :rules="c_55lo4f7tu7_rules[`r_lypj4zjra0`]"
                              :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                              class="vid_x31rgplmsg"
                              :label-col='{"span":8}'
                              :wrapper-col='{"span":16}'
                            >
                              <!-- begin vid_wndxo7pi3s 输入框_tifikdjdbc -->
                              <a-input
                                autocomplete="off"
                                :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex"
                                class="vid_wndxo7pi3s"
                                v-model:value="vid_wndxo7pi3s_props.value"
                                :placeholder="'请输入'"
                              >
                              </a-input>
                              <!-- end vid_wndxo7pi3s 输入框_tifikdjdbc -->
                              <template #label>
                                <!-- begin vid_tp8fngz4rw 简单文本_yrcere6fs4 -->
                                <span :data-cycle-index="vid_r0f4o2vg7s_dataItem.cycleIndex" class="vid_tp8fngz4rw"> 预计投入工时 </span>
                                <!-- end vid_tp8fngz4rw 简单文本_yrcere6fs4 -->
                              </template>
                            </a-form-item>
                            <!-- end vid_x31rgplmsg 表单项容器_xsfu2fpmxc -->
                          </a-col>
                          <a-col :span="12"> </a-col>
                        </a-row>
                        <!-- end vid_87olkd5s2v 布局容器_u66b8wuuh8 -->
                      </template>
                    </al-action-list>
                    <!-- end vid_r0f4o2vg7s 动作列表_z4f9gufv29 -->
                  </a-col>
                </a-row>
                <!-- end vid_vlnjwcg05m 布局容器_10pvw9azdg -->
              </al-box>
              <!-- end vid_4qy2cm8eyj 容器_aqnwg5tiwd -->
            </a-col>
          </a-row>
          <!-- end vid_zfpjtdokyg 布局容器_4fmmo1sqib -->
        </a-form>
        <!-- end vid_6u802x5119 表单容器_pws6pyb1y1 -->
      </a-modal>
      <!-- end vid_n5ise5idfj 编辑任务 -->
      <!-- begin vid_safmodqqf6 新增里程碑修改 -->
      <a-modal class="vid_safmodqqf6" v-model:visible="vid_safmodqqf6_props.visible" :centered="true" :title="'新增里程碑'" :maskClosable="false" :width="900" :okText="'保存'">
        <!-- begin vid_yy597s5r1k 表单容器_p5164toh6l -->
        <a-form class="vid_yy597s5r1k" :model="p_k07jx5bocd" :formModel="vid_yy597s5r1k_props.formModel">
          <!-- begin vid_0gfu15xti4 容器_rydw8o784n -->
          <al-box class="vid_0gfu15xti4">
            <!-- begin vid_abcrl9lx08 布局容器_jrb13ir0h8 -->
            <a-row class="vid_abcrl9lx08" :slots="'24'">
              <a-col :span="24">
                <!-- begin vid_l3r78hpqms 动作列表_dsmqymr894 -->
                <al-action-list
                  data-field-key="n_e4r9hhbo6q"
                  class="vid_l3r78hpqms"
                  v-model:dataSource="vid_l3r78hpqms_props.dataSource"
                  v-model:extendDataSource="vid_l3r78hpqms_props.dataSource"
                  v-model:current="vid_l3r78hpqms_props.current"
                  v-model:currentIndex="vid_l3r78hpqms_props.currentIndex"
                  :deleteLineHeight="60"
                >
                  <template #default="vid_l3r78hpqms_dataItem">
                    <!-- begin vid_m59ftpd51m 布局容器_ur2a052wsy -->
                    <a-row :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex" class="vid_m59ftpd51m" :slots="'12:12:12:12'">
                      <a-col :span="12">
                        <!-- begin vid_ekq3ad0042 表单项容器_r5s3vcxp1t -->
                        <a-form-item
                          :name="setSubFormName(vid_l3r78hpqms_dataItem,`z_ibu7wjz98a`)"
                          :rules="p_k07jx5bocd_rules[`z_ibu7wjz98a`]"
                          :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex"
                          class="vid_ekq3ad0042"
                          :label-col='{"span":8}'
                          :wrapper-col='{"span":16}'
                        >
                          <!-- begin vid_e0t85q05o4 输入框_3i7j18shyk -->
                          <a-input autocomplete="off" :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex" class="vid_e0t85q05o4" v-model:value="vid_e0t85q05o4_props.value" :placeholder="'请输入'">
                          </a-input>
                          <!-- end vid_e0t85q05o4 输入框_3i7j18shyk -->
                          <template #label>
                            <!-- begin vid_zht52kroa9 简单文本_k81x8mz88w -->
                            <span :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex" class="vid_zht52kroa9"> 里程碑名称 </span>
                            <!-- end vid_zht52kroa9 简单文本_k81x8mz88w -->
                          </template>
                        </a-form-item>
                        <!-- end vid_ekq3ad0042 表单项容器_r5s3vcxp1t -->
                      </a-col>
                      <a-col :span="12">
                        <!-- begin vid_ueuxx3k7iu 表单项容器_pzowreyhmr -->
                        <a-form-item
                          :name="setSubFormName(vid_l3r78hpqms_dataItem,`m_cp5zmq6rab`)"
                          :rules="p_k07jx5bocd_rules[`m_cp5zmq6rab`]"
                          :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex"
                          class="vid_ueuxx3k7iu"
                          :label-col='{"span":8}'
                          :wrapper-col='{"span":16}'
                        >
                          <!-- begin vid_pyppcfqy0i 下拉框_aadozbqk2v -->
                          <a-select
                            :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex"
                            class="vid_pyppcfqy0i"
                            :getPopupContainer="(node) => node.parentNode"
                            v-model:value="vid_pyppcfqy0i_props.value"
                            :showArrow="true"
                            :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                            :dropdownMatchSelectWidth="true"
                            :showSearch="true"
                            :placeholder="'请选择'"
                            :searchValue="vid_pyppcfqy0i_props.searchValue"
                            :selected="vid_pyppcfqy0i_props.selected"
                            :options="vid_pyppcfqy0i_options()"
                            @change="handle_vid_pyppcfqy0i_change"
                            @search="handle_vid_pyppcfqy0i_search"
                          >
                          </a-select>
                          <!-- end vid_pyppcfqy0i 下拉框_aadozbqk2v -->
                          <template #label>
                            <!-- begin vid_8nlul8legg 简单文本_hq6kszyn8e -->
                            <span :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex" class="vid_8nlul8legg"> 关联项目阶段 </span>
                            <!-- end vid_8nlul8legg 简单文本_hq6kszyn8e -->
                          </template>
                        </a-form-item>
                        <!-- end vid_ueuxx3k7iu 表单项容器_pzowreyhmr -->
                      </a-col>
                      <a-col :span="12">
                        <!-- begin vid_6p656lzw9d 表单项容器_r0sxmwj7m2 -->
                        <a-form-item
                          :name="setSubFormName(vid_l3r78hpqms_dataItem,`v_ioqiitlt4g`)"
                          :rules="p_k07jx5bocd_rules[`v_ioqiitlt4g`]"
                          :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex"
                          class="vid_6p656lzw9d"
                          :label-col='{"span":8}'
                          :wrapper-col='{"span":16}'
                        >
                          <!-- begin vid_c4n58t0fbv 输入框_ph7evxs2z8 -->
                          <a-input autocomplete="off" :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex" class="vid_c4n58t0fbv" v-model:value="vid_c4n58t0fbv_props.value" :placeholder="'请输入'">
                          </a-input>
                          <!-- end vid_c4n58t0fbv 输入框_ph7evxs2z8 -->
                          <template #label>
                            <!-- begin vid_mjvc2yew2q 简单文本_y8fg085p9q -->
                            <span :data-cycle-index="vid_l3r78hpqms_dataItem.cycleIndex" class="vid_mjvc2yew2q"> 里程碑预算 </span>
                            <!-- end vid_mjvc2yew2q 简单文本_y8fg085p9q -->
                          </template>
                        </a-form-item>
                        <!-- end vid_6p656lzw9d 表单项容器_r0sxmwj7m2 -->
                      </a-col>
                      <a-col :span="12"> </a-col>
                    </a-row>
                    <!-- end vid_m59ftpd51m 布局容器_ur2a052wsy -->
                  </template>
                </al-action-list>
                <!-- end vid_l3r78hpqms 动作列表_dsmqymr894 -->
              </a-col>
            </a-row>
            <!-- end vid_abcrl9lx08 布局容器_jrb13ir0h8 -->
          </al-box>
          <!-- end vid_0gfu15xti4 容器_rydw8o784n -->
        </a-form>
        <!-- end vid_yy597s5r1k 表单容器_p5164toh6l -->
      </a-modal>
      <!-- end vid_safmodqqf6 新增里程碑修改 -->
      <!-- begin vid_kayafdcysa 变更记录 -->
      <a-modal
        class="vid_kayafdcysa"
        v-model:visible="vid_kayafdcysa_props.visible"
        :footer="null"
        :centered="true"
        :title="'变更记录'"
        :maskClosable="false"
        :width="1400"
        @cancel="handle_vid_kayafdcysa_cancel"
      >
        <!-- begin vid_icuwd20mze 容器_vmq7kmuv9j -->
        <al-box class="vid_icuwd20mze">
          <!-- begin vid_j1gz4cdo9y 表格_r2pdwtxtt0 -->
          <!-- 表格_r2pdwtxtt0 -->
          <a-table
            class="vid_j1gz4cdo9y"
            :editRowSaveLoading="vid_j1gz4cdo9y_props.editRowSaveLoading"
            :sorter="vid_j1gz4cdo9y_props.sorter"
            :currentRow="vid_j1gz4cdo9y_props.currentRow"
            :selectedRowList="vid_j1gz4cdo9y_props.selectedRowList"
            :data-source="vid_j1gz4cdo9y_options()"
            @change="handle_vid_j1gz4cdo9y_change"
            :columns="vid_j1gz4cdo9y_columns"
            :pagination="vid_j1gz4cdo9y_pagination"
            row-key="id"
            @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_j1gz4cdo9y')"
            :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
            :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
          >
            <template #headerCell="{ title, column }">
              <TableHeaderCell :title="title" :column="column" />
            </template>
            <template #bodyCell="{ text, column, record, index }">
              <!-- 序号列 -->
              <template v-if="column && column.dataIndex === 'vid_j1gz4cdo9y_serialNumber'">
                {{ index + 1 }}
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"变更内容"} 列内容 -->
              <template v-if="column.dataIndex === 'custom1' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_j1gz4cdo9y_props.boundaryValueMap"
                  :dataSource="vid_j1gz4cdo9y_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"变更日期"} 列内容 -->
              <template v-if="column.dataIndex === 'custom2' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_j1gz4cdo9y_props.boundaryValueMap"
                  :dataSource="vid_j1gz4cdo9y_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"变更操作人"} 列内容 -->
              <template v-if="column.dataIndex === 'custom3' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_j1gz4cdo9y_props.boundaryValueMap"
                  :dataSource="vid_j1gz4cdo9y_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"当前审批人"} 列内容 -->
              <template v-if="column.dataIndex === 'custom4' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_j1gz4cdo9y_props.boundaryValueMap"
                  :dataSource="vid_j1gz4cdo9y_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"变更状态"} 列内容 -->
              <template v-if="column.dataIndex === 'custom5' && !column.customRender">
                <text-table-cell
                  :rowData="record"
                  :conditionValueMap="vid_j1gz4cdo9y_props.boundaryValueMap"
                  :dataSource="vid_j1gz4cdo9y_props.contentDataSource[column.dataIndex]"
                  :columnsConfig="column"
                  :value="text"
                />
              </template>
            </template>
          </a-table>
          <!-- end vid_j1gz4cdo9y 表格_r2pdwtxtt0 -->
        </al-box>
        <!-- end vid_icuwd20mze 容器_vmq7kmuv9j -->
        <!-- begin vid_n46zb4sub7 容器_zsqcf0byo2 -->
        <al-box class="vid_n46zb4sub7">
          <!-- begin vid_j51c8yh5iv 按钮_s2019mcvq8 -->
          <a-button class="vid_j51c8yh5iv" @click="handle_vid_j51c8yh5iv_click"> 关闭 </a-button>
          <!-- end vid_j51c8yh5iv 按钮_s2019mcvq8 -->
        </al-box>
        <!-- end vid_n46zb4sub7 容器_zsqcf0byo2 -->
      </a-modal>
      <!-- end vid_kayafdcysa 变更记录 -->
      <!-- begin vid_ui8qtu2f2h 完成 -->
      <a-modal
        class="vid_ui8qtu2f2h"
        v-model:visible="vid_ui8qtu2f2h_props.visible"
        :centered="true"
        :title="'完成'"
        :maskClosable="false"
        :width="400"
        @cancel="handle_vid_ui8qtu2f2h_cancel"
        @ok="handle_vid_ui8qtu2f2h_ok"
      >
        <!-- begin vid_5rm2qtfkt8 完成单选按钮 -->
        <a-radio-group
          class="vid_5rm2qtfkt8"
          v-model:value="vid_5rm2qtfkt8_props.value"
          :selected="vid_5rm2qtfkt8_props.selected"
          :options="vid_5rm2qtfkt8_options()"
          @change="handle_vid_5rm2qtfkt8_change"
        >
        </a-radio-group>
        <!-- end vid_5rm2qtfkt8 完成单选按钮 -->
      </a-modal>
      <!-- end vid_ui8qtu2f2h 完成 -->
      <!-- begin vid_lyqnvc72no 检查清单 -->
      <a-modal
        class="vid_lyqnvc72no"
        v-model:visible="vid_lyqnvc72no_props.visible"
        :centered="true"
        :title="'检查清单'"
        :maskClosable="false"
        :width="800"
        @cancel="handle_vid_lyqnvc72no_cancel"
        @ok="handle_vid_lyqnvc72no_ok"
      >
        <!-- begin vid_nr65qywuao 标签页_eq2uqw0fki -->
        <a-tabs class="vid_nr65qywuao" v-model:activeKey="vid_nr65qywuao_props.activeKey" :type="'card'">
          <template #leftExtra> </template>
          <template #rightExtra> </template>
          <a-tab-pane key="Tab1" force-render>
            <template #tab> 交付部 </template>
            <!-- begin vid_mj8dbfszhq 容器_e7wxp9wr7a -->
            <al-box class="vid_mj8dbfszhq">
              <!-- begin vid_jnyid3041z 表格_7d4yt4kmd2 -->
              <!-- 表格_7d4yt4kmd2 -->
              <a-table
                class="vid_jnyid3041z"
                :editRowSaveLoading="vid_jnyid3041z_props.editRowSaveLoading"
                :sorter="vid_jnyid3041z_props.sorter"
                :currentRow="vid_jnyid3041z_props.currentRow"
                :selectedRowList="vid_jnyid3041z_props.selectedRowList"
                :data-source="vid_jnyid3041z_options()"
                @change="handle_vid_jnyid3041z_change"
                :columns="vid_jnyid3041z_columns"
                :pagination="false"
                row-key="id"
                @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_jnyid3041z')"
                :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
              >
                <template #headerCell="{ title, column }">
                  <TableHeaderCell :title="title" :column="column" />
                </template>
                <template #bodyCell="{ text, column, record, index }">
                  <!-- 序号列 -->
                  <template v-if="column && column.dataIndex === 'vid_jnyid3041z_serialNumber'">
                    {{ index + 1 }}
                  </template>
                  <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"检查项内容描述"} 列内容 -->
                  <template v-if="column.dataIndex === 'checkEntry' && !column.customRender">
                    <text-table-cell
                      :rowData="record"
                      :conditionValueMap="vid_jnyid3041z_props.boundaryValueMap"
                      :dataSource="vid_jnyid3041z_props.contentDataSource[column.dataIndex]"
                      :columnsConfig="column"
                      :value="text"
                    />
                  </template>
                </template>
              </a-table>
              <!-- end vid_jnyid3041z 表格_7d4yt4kmd2 -->
            </al-box>
            <!-- end vid_mj8dbfszhq 容器_e7wxp9wr7a -->
          </a-tab-pane>
          <a-tab-pane key="Tab2" force-render>
            <template #tab> 产品部 </template>
            <!-- begin vid_ygzqpehkeu 容器_f3w3tehmjv -->
            <al-box class="vid_ygzqpehkeu">
              <!-- begin vid_qequdcdegn 表格_rp4lzq74k9 -->
              <!-- 表格_rp4lzq74k9 -->
              <a-table
                class="vid_qequdcdegn"
                :editRowSaveLoading="vid_qequdcdegn_props.editRowSaveLoading"
                :sorter="vid_qequdcdegn_props.sorter"
                :currentRow="vid_qequdcdegn_props.currentRow"
                :selectedRowList="vid_qequdcdegn_props.selectedRowList"
                :data-source="vid_qequdcdegn_options()"
                @change="handle_vid_qequdcdegn_change"
                :columns="vid_qequdcdegn_columns"
                :pagination="false"
                row-key="id"
                @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_qequdcdegn')"
                :scroll="{ x: 'max-content', scrollToFirstRowOnChange: false, }"
                :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
              >
                <template #headerCell="{ title, column }">
                  <TableHeaderCell :title="title" :column="column" />
                </template>
                <template #bodyCell="{ text, column, record, index }">
                  <!-- 序号列 -->
                  <template v-if="column && column.dataIndex === 'vid_qequdcdegn_serialNumber'">
                    {{ index + 1 }}
                  </template>
                  <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"检查项内容描述"} 列内容 -->
                  <template v-if="column.dataIndex === 'checkEntry' && !column.customRender">
                    <text-table-cell
                      :rowData="record"
                      :conditionValueMap="vid_qequdcdegn_props.boundaryValueMap"
                      :dataSource="vid_qequdcdegn_props.contentDataSource[column.dataIndex]"
                      :columnsConfig="column"
                      :value="text"
                    />
                  </template>
                </template>
              </a-table>
              <!-- end vid_qequdcdegn 表格_rp4lzq74k9 -->
            </al-box>
            <!-- end vid_ygzqpehkeu 容器_f3w3tehmjv -->
          </a-tab-pane>
          <a-tab-pane key="Tab3" force-render>
            <template #tab> 解决方案 </template>
            <!-- begin vid_nlkrdx6r1b 容器_e4xtz2rbbv -->
            <al-box class="vid_nlkrdx6r1b">
              <!-- begin vid_q4iurfb43l 表格_6rk7kbvudd -->
              <!-- 表格_6rk7kbvudd -->
              <a-table
                class="vid_q4iurfb43l"
                :editRowSaveLoading="vid_q4iurfb43l_props.editRowSaveLoading"
                :sorter="vid_q4iurfb43l_props.sorter"
                :currentRow="vid_q4iurfb43l_props.currentRow"
                :selectedRowList="vid_q4iurfb43l_props.selectedRowList"
                :data-source="vid_q4iurfb43l_options()"
                @change="handle_vid_q4iurfb43l_change"
                :columns="vid_q4iurfb43l_columns"
                :pagination="false"
                row-key="id"
                @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_q4iurfb43l')"
                :scroll="{ x: 'max-content', scrollToFirstRowOnChange: false, }"
                :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
              >
                <template #headerCell="{ title, column }">
                  <TableHeaderCell :title="title" :column="column" />
                </template>
                <template #bodyCell="{ text, column, record, index }">
                  <!-- 序号列 -->
                  <template v-if="column && column.dataIndex === 'vid_q4iurfb43l_serialNumber'">
                    {{ index + 1 }}
                  </template>
                  <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"检查项内容描述"} 列内容 -->
                  <template v-if="column.dataIndex === 'checkEntry' && !column.customRender">
                    <text-table-cell
                      :rowData="record"
                      :conditionValueMap="vid_q4iurfb43l_props.boundaryValueMap"
                      :dataSource="vid_q4iurfb43l_props.contentDataSource[column.dataIndex]"
                      :columnsConfig="column"
                      :value="text"
                    />
                  </template>
                </template>
              </a-table>
              <!-- end vid_q4iurfb43l 表格_6rk7kbvudd -->
            </al-box>
            <!-- end vid_nlkrdx6r1b 容器_e4xtz2rbbv -->
          </a-tab-pane>
          <a-tab-pane key="vid_aqx43to6o6" force-render>
            <template #tab> 售前部 </template>
            <!-- begin vid_lhabscif1v 容器_vfkep01u8d -->
            <al-box class="vid_lhabscif1v">
              <!-- begin vid_8s72c1zxsf 表格_r52b9scvx4 -->
              <!-- 表格_r52b9scvx4 -->
              <a-table
                class="vid_8s72c1zxsf"
                :editRowSaveLoading="vid_8s72c1zxsf_props.editRowSaveLoading"
                :sorter="vid_8s72c1zxsf_props.sorter"
                :currentRow="vid_8s72c1zxsf_props.currentRow"
                :selectedRowList="vid_8s72c1zxsf_props.selectedRowList"
                :data-source="vid_8s72c1zxsf_options()"
                @change="handle_vid_8s72c1zxsf_change"
                :columns="vid_8s72c1zxsf_columns"
                :pagination="false"
                row-key="id"
                @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_8s72c1zxsf')"
                :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
              >
                <template #headerCell="{ title, column }">
                  <TableHeaderCell :title="title" :column="column" />
                </template>
                <template #bodyCell="{ text, column, record, index }">
                  <!-- 序号列 -->
                  <template v-if="column && column.dataIndex === 'vid_8s72c1zxsf_serialNumber'">
                    {{ index + 1 }}
                  </template>
                  <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"检查项内容描述"} 列内容 -->
                  <template v-if="column.dataIndex === 'checkEntry' && !column.customRender">
                    <text-table-cell
                      :rowData="record"
                      :conditionValueMap="vid_8s72c1zxsf_props.boundaryValueMap"
                      :dataSource="vid_8s72c1zxsf_props.contentDataSource[column.dataIndex]"
                      :columnsConfig="column"
                      :value="text"
                    />
                  </template>
                </template>
              </a-table>
              <!-- end vid_8s72c1zxsf 表格_r52b9scvx4 -->
            </al-box>
            <!-- end vid_lhabscif1v 容器_vfkep01u8d -->
          </a-tab-pane>
          <a-tab-pane key="vid_05ngfrmf2i" force-render>
            <template #tab> 销售部 </template>
            <!-- begin vid_tfy8tncllc 容器_00iizgkkfl -->
            <al-box class="vid_tfy8tncllc">
              <!-- begin vid_rks1qpqlib 表格_4pz1d1fs5f -->
              <!-- 表格_4pz1d1fs5f -->
              <a-table
                class="vid_rks1qpqlib"
                :editRowSaveLoading="vid_rks1qpqlib_props.editRowSaveLoading"
                :sorter="vid_rks1qpqlib_props.sorter"
                :currentRow="vid_rks1qpqlib_props.currentRow"
                :selectedRowList="vid_rks1qpqlib_props.selectedRowList"
                :data-source="vid_rks1qpqlib_options()"
                @change="handle_vid_rks1qpqlib_change"
                :columns="vid_rks1qpqlib_columns"
                :pagination="false"
                row-key="id"
                @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_rks1qpqlib')"
                :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
              >
                <template #headerCell="{ title, column }">
                  <TableHeaderCell :title="title" :column="column" />
                </template>
                <template #bodyCell="{ text, column, record, index }">
                  <!-- 序号列 -->
                  <template v-if="column && column.dataIndex === 'vid_rks1qpqlib_serialNumber'">
                    {{ index + 1 }}
                  </template>
                  <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"检查项内容描述"} 列内容 -->
                  <template v-if="column.dataIndex === 'checkEntry' && !column.customRender">
                    <text-table-cell
                      :rowData="record"
                      :conditionValueMap="vid_rks1qpqlib_props.boundaryValueMap"
                      :dataSource="vid_rks1qpqlib_props.contentDataSource[column.dataIndex]"
                      :columnsConfig="column"
                      :value="text"
                    />
                  </template>
                </template>
              </a-table>
              <!-- end vid_rks1qpqlib 表格_4pz1d1fs5f -->
            </al-box>
            <!-- end vid_tfy8tncllc 容器_00iizgkkfl -->
          </a-tab-pane>
          <a-tab-pane key="vid_r55q9inq32" force-render>
            <template #tab> 财务 </template>
            <!-- begin vid_7bwihm892y 容器_ko6gllkh65 -->
            <al-box class="vid_7bwihm892y">
              <!-- begin vid_1e93e4wxa1 表格_k6cg4p2hb7 -->
              <!-- 表格_k6cg4p2hb7 -->
              <a-table
                class="vid_1e93e4wxa1"
                :editRowSaveLoading="vid_1e93e4wxa1_props.editRowSaveLoading"
                :sorter="vid_1e93e4wxa1_props.sorter"
                :currentRow="vid_1e93e4wxa1_props.currentRow"
                :selectedRowList="vid_1e93e4wxa1_props.selectedRowList"
                :data-source="vid_1e93e4wxa1_options()"
                @change="handle_vid_1e93e4wxa1_change"
                :columns="vid_1e93e4wxa1_columns"
                :pagination="false"
                row-key="id"
                @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_1e93e4wxa1')"
                :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
              >
                <template #headerCell="{ title, column }">
                  <TableHeaderCell :title="title" :column="column" />
                </template>
                <template #bodyCell="{ text, column, record, index }">
                  <!-- 序号列 -->
                  <template v-if="column && column.dataIndex === 'vid_1e93e4wxa1_serialNumber'">
                    {{ index + 1 }}
                  </template>
                  <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"检查项内容描述"} 列内容 -->
                  <template v-if="column.dataIndex === 'checkEntry' && !column.customRender">
                    <text-table-cell
                      :rowData="record"
                      :conditionValueMap="vid_1e93e4wxa1_props.boundaryValueMap"
                      :dataSource="vid_1e93e4wxa1_props.contentDataSource[column.dataIndex]"
                      :columnsConfig="column"
                      :value="text"
                    />
                  </template>
                </template>
              </a-table>
              <!-- end vid_1e93e4wxa1 表格_k6cg4p2hb7 -->
            </al-box>
            <!-- end vid_7bwihm892y 容器_ko6gllkh65 -->
          </a-tab-pane>
          <a-tab-pane key="vid_c6fn1n1lst" force-render>
            <template #tab> 平台研发部 </template>
            <!-- begin vid_wuppwzw3zs 容器_e1zc5oedji -->
            <al-box class="vid_wuppwzw3zs">
              <!-- begin vid_bl8zxuphn2 表格_ictlsqlk6d -->
              <!-- 表格_ictlsqlk6d -->
              <a-table
                class="vid_bl8zxuphn2"
                :editRowSaveLoading="vid_bl8zxuphn2_props.editRowSaveLoading"
                :sorter="vid_bl8zxuphn2_props.sorter"
                :currentRow="vid_bl8zxuphn2_props.currentRow"
                :selectedRowList="vid_bl8zxuphn2_props.selectedRowList"
                :data-source="vid_bl8zxuphn2_options()"
                @change="handle_vid_bl8zxuphn2_change"
                :columns="vid_bl8zxuphn2_columns"
                :pagination="false"
                row-key="id"
                @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_bl8zxuphn2')"
                :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
              >
                <template #headerCell="{ title, column }">
                  <TableHeaderCell :title="title" :column="column" />
                </template>
                <template #bodyCell="{ text, column, record, index }">
                  <!-- 序号列 -->
                  <template v-if="column && column.dataIndex === 'vid_bl8zxuphn2_serialNumber'">
                    {{ index + 1 }}
                  </template>
                  <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"检查项内容描述"} 列内容 -->
                  <template v-if="column.dataIndex === 'checkEntry' && !column.customRender">
                    <text-table-cell
                      :rowData="record"
                      :conditionValueMap="vid_bl8zxuphn2_props.boundaryValueMap"
                      :dataSource="vid_bl8zxuphn2_props.contentDataSource[column.dataIndex]"
                      :columnsConfig="column"
                      :value="text"
                    />
                  </template>
                </template>
              </a-table>
              <!-- end vid_bl8zxuphn2 表格_ictlsqlk6d -->
            </al-box>
            <!-- end vid_wuppwzw3zs 容器_e1zc5oedji -->
          </a-tab-pane>
        </a-tabs>
        <!-- end vid_nr65qywuao 标签页_eq2uqw0fki -->
      </a-modal>
      <!-- end vid_lyqnvc72no 检查清单 -->
      <!-- begin vid_jlz2iy5yjj 新建项目 -->
      <a-modal
        class="vid_jlz2iy5yjj"
        v-model:visible="vid_jlz2iy5yjj_props.visible"
        :centered="true"
        :title="'新建项目'"
        :maskClosable="false"
        :width="800"
        @cancel="handle_vid_jlz2iy5yjj_cancel"
        @ok="handle_vid_jlz2iy5yjj_ok"
      >
        <!-- begin vid_wema9l87ch 容器_ms84pu9h1o -->
        <al-box class="vid_wema9l87ch">
          <!-- begin vid_om6xs2pbh0 表单容器_h4avw5u5oa -->
          <a-form ref="vid_om6xs2pbh0_ref" class="vid_om6xs2pbh0" :model="n_46v5crtmxg" :formModel="vid_om6xs2pbh0_props.formModel">
            <!-- begin vid_rwof97f3u7 布局容器_3im4dogg9z -->
            <a-row class="vid_rwof97f3u7" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_kuzn3f0w67 表单项容器_j2jgh6nect -->
                <a-form-item name="m_k4ow5t0omu" :rules="n_46v5crtmxg_rules[`m_k4ow5t0omu`]" class="vid_kuzn3f0w67" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_1e02teh5vo 下拉树_veoious634 -->
                  <a-tree-select
                    class="vid_1e02teh5vo"
                    :treeNodeFilterProp="'projectName'"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.m_k4ow5t0omu"
                    :fieldNames="{'children':'children','label':'projectName','value':'projectId','key':'projectId'}"
                    :dropdownMatchSelectWidth="false"
                    :showSearch="true"
                    :placeholder="'请选择项目关联菜单'"
                    :allowClear="true"
                    :selected="vid_1e02teh5vo_props.selected"
                    :treeData="vid_1e02teh5vo_options()"
                    @change="handle_vid_1e02teh5vo_change"
                  >
                  </a-tree-select>
                  <!-- end vid_1e02teh5vo 下拉树_veoious634 -->
                  <template #label>
                    <!-- begin vid_bnu4p9rzjr 项目关联菜单 -->
                    <span class="vid_bnu4p9rzjr"> 项目关联菜单 </span>
                    <!-- end vid_bnu4p9rzjr 项目关联菜单 -->
                  </template>
                </a-form-item>
                <!-- end vid_kuzn3f0w67 表单项容器_j2jgh6nect -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_18xhqrp6rr 表单项容器_vkytfwh87v -->
                <a-form-item name="x_1oip5ccego" :rules="n_46v5crtmxg_rules[`x_1oip5ccego`]" class="vid_18xhqrp6rr" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_h9sbr1zj83 新建-项目代号-projectName -->
                  <a-input autocomplete="off" class="vid_h9sbr1zj83" v-model:value="n_46v5crtmxg.x_1oip5ccego" :placeholder="'请输入项目名称'"> </a-input>
                  <!-- end vid_h9sbr1zj83 新建-项目代号-projectName -->
                  <template #label>
                    <!-- begin vid_q04a862rss 简单文本_cljistke7s -->
                    <span class="vid_q04a862rss"> 项目名称 </span>
                    <!-- end vid_q04a862rss 简单文本_cljistke7s -->
                  </template>
                </a-form-item>
                <!-- end vid_18xhqrp6rr 表单项容器_vkytfwh87v -->
              </a-col>
            </a-row>
            <!-- end vid_rwof97f3u7 布局容器_3im4dogg9z -->
            <!-- begin vid_w2zkxaa8f4 布局容器_5tmlnh7wf8 -->
            <a-row class="vid_w2zkxaa8f4" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_f56d2wqovv 表单项容器_5ldtc9g977 -->
                <a-form-item name="f_7ny0r7ef71" :rules="n_46v5crtmxg_rules[`f_7ny0r7ef71`]" class="vid_f56d2wqovv" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_368wohb2yt 售前编码-preSalesCode -->
                  <a-input autocomplete="off" class="vid_368wohb2yt" v-model:value="n_46v5crtmxg.f_7ny0r7ef71" :placeholder="'请输入售前编码'"> </a-input>
                  <!-- end vid_368wohb2yt 售前编码-preSalesCode -->
                  <template #label>
                    <!-- begin vid_60six9tlz3 简单文本_42ea8uv5vj -->
                    <span class="vid_60six9tlz3"> 售前编码 </span>
                    <!-- end vid_60six9tlz3 简单文本_42ea8uv5vj -->
                  </template>
                </a-form-item>
                <!-- end vid_f56d2wqovv 表单项容器_5ldtc9g977 -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_li87dauspl 表单项容器_p5sr9vb22w -->
                <a-form-item name="j_lige3x5b0t" :rules="n_46v5crtmxg_rules[`j_lige3x5b0t`]" class="vid_li87dauspl" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_qwepqm38xj 项目代号-projectCode -->
                  <a-input autocomplete="off" class="vid_qwepqm38xj" v-model:value="n_46v5crtmxg.j_lige3x5b0t" :placeholder="'请输入项目代号'"> </a-input>
                  <!-- end vid_qwepqm38xj 项目代号-projectCode -->
                  <template #label>
                    <!-- begin vid_usakvn81ay 项目代号 -->
                    <span class="vid_usakvn81ay"> 项目代号 </span>
                    <!-- end vid_usakvn81ay 项目代号 -->
                  </template>
                </a-form-item>
                <!-- end vid_li87dauspl 表单项容器_p5sr9vb22w -->
              </a-col>
            </a-row>
            <!-- end vid_w2zkxaa8f4 布局容器_5tmlnh7wf8 -->
            <!-- begin vid_0gj6dnwb73 布局容器_7spe4ffeky -->
            <a-row class="vid_0gj6dnwb73" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_1jeu0nxzhg 表单项容器_uud0ugzgip -->
                <a-form-item name="o_pjua39nomn" :rules="n_46v5crtmxg_rules[`o_pjua39nomn`]" class="vid_1jeu0nxzhg" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_8ggecxpznd 项目类型-projectType -->
                  <a-select
                    class="vid_8ggecxpznd"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.o_pjua39nomn"
                    :showArrow="true"
                    :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                    :dropdownMatchSelectWidth="true"
                    :showSearch="true"
                    :placeholder="'请选择项目类型'"
                    :allowClear="true"
                    :searchValue="vid_8ggecxpznd_props.searchValue"
                    :selected="vid_8ggecxpznd_props.selected"
                    :options="vid_8ggecxpznd_options()"
                    @change="handle_vid_8ggecxpznd_change"
                    @search="handle_vid_8ggecxpznd_search"
                  >
                  </a-select>
                  <!-- end vid_8ggecxpznd 项目类型-projectType -->
                  <template #label>
                    <!-- begin vid_ren7mbsca3 项目类型 -->
                    <span class="vid_ren7mbsca3"> 项目类型 </span>
                    <!-- end vid_ren7mbsca3 项目类型 -->
                  </template>
                </a-form-item>
                <!-- end vid_1jeu0nxzhg 表单项容器_uud0ugzgip -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_375mz1gml0 表单项容器_5gi6jn41mq -->
                <a-form-item name="h_s027ysw3aj" :rules="n_46v5crtmxg_rules[`h_s027ysw3aj`]" class="vid_375mz1gml0" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_gbyq110evo 项目编码-projectNumber -->
                  <a-input autocomplete="off" class="vid_gbyq110evo" v-model:value="n_46v5crtmxg.h_s027ysw3aj" :placeholder="'请输入项目编码'"> </a-input>
                  <!-- end vid_gbyq110evo 项目编码-projectNumber -->
                  <template #label>
                    <!-- begin vid_dn4nwwkqxg 项目编码 -->
                    <span class="vid_dn4nwwkqxg"> 项目编码 </span>
                    <!-- end vid_dn4nwwkqxg 项目编码 -->
                  </template>
                </a-form-item>
                <!-- end vid_375mz1gml0 表单项容器_5gi6jn41mq -->
              </a-col>
            </a-row>
            <!-- end vid_0gj6dnwb73 布局容器_7spe4ffeky -->
            <!-- begin vid_hy6xjj0f8i 布局容器_flrj2vlozl -->
            <a-row class="vid_hy6xjj0f8i" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_mval3kmrep 表单项容器_t2onxenegs -->
                <a-form-item name="b_wjbmf9j6d3" :rules="n_46v5crtmxg_rules[`b_wjbmf9j6d3`]" class="vid_mval3kmrep" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_bfjobeu4bo 项目交付编码-deliverCode -->
                  <a-input autocomplete="off" class="vid_bfjobeu4bo" v-model:value="n_46v5crtmxg.b_wjbmf9j6d3" :placeholder="'请输入项目交付编码'"> </a-input>
                  <!-- end vid_bfjobeu4bo 项目交付编码-deliverCode -->
                  <template #label>
                    <!-- begin vid_e6crbea7vd 项目交付编码 -->
                    <span class="vid_e6crbea7vd"> 项目交付编码 </span>
                    <!-- end vid_e6crbea7vd 项目交付编码 -->
                  </template>
                </a-form-item>
                <!-- end vid_mval3kmrep 表单项容器_t2onxenegs -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_ra5tv26r18 表单项容器_an2qltzska -->
                <a-form-item name="j_e9w8kkqr89" :rules="n_46v5crtmxg_rules[`j_e9w8kkqr89`]" class="vid_ra5tv26r18" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_s19eb77uma 项目开始时间-startTime -->
                  <a-date-picker
                    class="vid_s19eb77uma"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.j_e9w8kkqr89"
                    :format="'YYYY-MM-DD HH:mm:ss'"
                    :valueFormat="'YYYY-MM-DD HH:mm:ss'"
                    :placeholder="'请选择开始时间'"
                    :showTime="vid_s19eb77uma_props.showTime"
                  >
                  </a-date-picker>
                  <!-- end vid_s19eb77uma 项目开始时间-startTime -->
                  <template #label>
                    <!-- begin vid_uy831ujlg2 项目开始时间 -->
                    <span class="vid_uy831ujlg2"> 项目开始时间 </span>
                    <!-- end vid_uy831ujlg2 项目开始时间 -->
                  </template>
                </a-form-item>
                <!-- end vid_ra5tv26r18 表单项容器_an2qltzska -->
              </a-col>
            </a-row>
            <!-- end vid_hy6xjj0f8i 布局容器_flrj2vlozl -->
            <!-- begin vid_oovp4sixvz 布局容器_8ipl928yf4 -->
            <a-row class="vid_oovp4sixvz" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_25e153i32k 表单项容器_xb8cv804sm -->
                <a-form-item name="k_iisg9mfvgc" :rules="n_46v5crtmxg_rules[`k_iisg9mfvgc`]" class="vid_25e153i32k" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_nn7q3zj5qd 项目上线时间-deliveryTime -->
                  <a-date-picker
                    class="vid_nn7q3zj5qd"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.k_iisg9mfvgc"
                    :format="'YYYY-MM-DD HH:mm:ss'"
                    :valueFormat="'YYYY-MM-DD HH:mm:ss'"
                    :placeholder="'请选择项目上线时间'"
                    :showTime="vid_nn7q3zj5qd_props.showTime"
                  >
                  </a-date-picker>
                  <!-- end vid_nn7q3zj5qd 项目上线时间-deliveryTime -->
                  <template #label>
                    <!-- begin vid_i6fljpkhf0 项目上线时间 -->
                    <span class="vid_i6fljpkhf0"> 项目上线时间 </span>
                    <!-- end vid_i6fljpkhf0 项目上线时间 -->
                  </template>
                </a-form-item>
                <!-- end vid_25e153i32k 表单项容器_xb8cv804sm -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_gyd8djrme0 表单项容器_qumwesayx5 -->
                <a-form-item name="c_01ih17214x" :rules="n_46v5crtmxg_rules[`c_01ih17214x`]" class="vid_gyd8djrme0" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_wy9y2nfvpy 项目验收时间-acceptanceTime -->
                  <a-date-picker
                    class="vid_wy9y2nfvpy"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.c_01ih17214x"
                    :format="'YYYY-MM-DD HH:mm:ss'"
                    :valueFormat="'YYYY-MM-DD HH:mm:ss'"
                    :placeholder="'请选择验收时间'"
                    :showTime="vid_wy9y2nfvpy_props.showTime"
                  >
                  </a-date-picker>
                  <!-- end vid_wy9y2nfvpy 项目验收时间-acceptanceTime -->
                  <template #label>
                    <!-- begin vid_kl6oybnjwf 项目验收时间 -->
                    <span class="vid_kl6oybnjwf"> 项目验收时间 </span>
                    <!-- end vid_kl6oybnjwf 项目验收时间 -->
                  </template>
                </a-form-item>
                <!-- end vid_gyd8djrme0 表单项容器_qumwesayx5 -->
              </a-col>
            </a-row>
            <!-- end vid_oovp4sixvz 布局容器_8ipl928yf4 -->
            <!-- begin vid_z5ynz0w3v2 布局容器_3o0fick50c -->
            <a-row class="vid_z5ynz0w3v2" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_jl3w1p8q8d 表单项容器_mx7j2xp9qz -->
                <a-form-item name="n_ql9ww71lqh" :rules="n_46v5crtmxg_rules[`n_ql9ww71lqh`]" class="vid_jl3w1p8q8d" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_euf3ywxtbl 项目结束时间-endTime -->
                  <a-date-picker
                    class="vid_euf3ywxtbl"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.n_ql9ww71lqh"
                    :format="'YYYY-MM-DD HH:mm:ss'"
                    :valueFormat="'YYYY-MM-DD HH:mm:ss'"
                    :placeholder="'请选择项目结束时间'"
                    :showTime="vid_euf3ywxtbl_props.showTime"
                  >
                  </a-date-picker>
                  <!-- end vid_euf3ywxtbl 项目结束时间-endTime -->
                  <template #label>
                    <!-- begin vid_rw51krfo9u 项目结束时间 -->
                    <span class="vid_rw51krfo9u"> 项目结束时间 </span>
                    <!-- end vid_rw51krfo9u 项目结束时间 -->
                  </template>
                </a-form-item>
                <!-- end vid_jl3w1p8q8d 表单项容器_mx7j2xp9qz -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_s4dm3zocaz 表单项容器_3tq7ret2cy -->
                <a-form-item name="departmentName" :rules="n_46v5crtmxg_rules[`departmentName`]" class="vid_s4dm3zocaz" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_wq2zxrypxm 下拉树_departmentName -->
                  <a-tree-select
                    class="vid_wq2zxrypxm"
                    :treeNodeFilterProp="'name'"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.departmentName"
                    :fieldNames="{'children':'children','label':'name','value':'name','key':'id'}"
                    :dropdownMatchSelectWidth="false"
                    :showSearch="true"
                    :placeholder="'请选择申请人所在部门'"
                    :allowClear="true"
                    :selected="vid_wq2zxrypxm_props.selected"
                    :treeData="vid_wq2zxrypxm_options()"
                    @change="handle_vid_wq2zxrypxm_change"
                  >
                  </a-tree-select>
                  <!-- end vid_wq2zxrypxm 下拉树_departmentName -->
                  <template #label>
                    <!-- begin vid_46d91vtxyy 申请人所在部门 -->
                    <span class="vid_46d91vtxyy"> 申请人所在部门 </span>
                    <!-- end vid_46d91vtxyy 申请人所在部门 -->
                  </template>
                </a-form-item>
                <!-- end vid_s4dm3zocaz 表单项容器_3tq7ret2cy -->
              </a-col>
            </a-row>
            <!-- end vid_z5ynz0w3v2 布局容器_3o0fick50c -->
            <!-- begin vid_28sbp9us0m 布局容器_4pqlxb7d3o -->
            <a-row class="vid_28sbp9us0m" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_w4zi9xpoja 表单项容器_67y5psz946 -->
                <a-form-item name="p_q2yk2wqav6" :rules="n_46v5crtmxg_rules[`p_q2yk2wqav6`]" class="vid_w4zi9xpoja" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_5ckqr8oxpq 项目经理-pmName -->
                  <a-select
                    class="vid_5ckqr8oxpq"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.p_q2yk2wqav6"
                    :showArrow="true"
                    :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                    :dropdownMatchSelectWidth="true"
                    :showSearch="true"
                    :placeholder="'请选择项目经理'"
                    :allowClear="true"
                    :searchValue="vid_5ckqr8oxpq_props.searchValue"
                    :selected="vid_5ckqr8oxpq_props.selected"
                    :options="vid_5ckqr8oxpq_options()"
                    @change="handle_vid_5ckqr8oxpq_change"
                    @search="handle_vid_5ckqr8oxpq_search"
                  >
                  </a-select>
                  <!-- end vid_5ckqr8oxpq 项目经理-pmName -->
                  <template #label>
                    <!-- begin vid_vhzo0vcu1r 项目经理 -->
                    <span class="vid_vhzo0vcu1r"> 项目经理 </span>
                    <!-- end vid_vhzo0vcu1r 项目经理 -->
                  </template>
                </a-form-item>
                <!-- end vid_w4zi9xpoja 表单项容器_67y5psz946 -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_p1o9ji244n 表单项容器_aui3jga5qb -->
                <a-form-item name="d_kf78mkndbe" :rules="n_46v5crtmxg_rules[`d_kf78mkndbe`]" class="vid_p1o9ji244n" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_4ep7x2c07v 项目负责人-plName -->
                  <a-select
                    class="vid_4ep7x2c07v"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.d_kf78mkndbe"
                    :showArrow="true"
                    :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                    :dropdownMatchSelectWidth="true"
                    :showSearch="true"
                    :placeholder="'请选择项目负责人'"
                    :allowClear="true"
                    :searchValue="vid_4ep7x2c07v_props.searchValue"
                    :selected="vid_4ep7x2c07v_props.selected"
                    :options="vid_4ep7x2c07v_options()"
                    @change="handle_vid_4ep7x2c07v_change"
                    @search="handle_vid_4ep7x2c07v_search"
                  >
                  </a-select>
                  <!-- end vid_4ep7x2c07v 项目负责人-plName -->
                  <template #label>
                    <!-- begin vid_1hosub2tbw 项目负责人 -->
                    <span class="vid_1hosub2tbw"> 项目负责人 </span>
                    <!-- end vid_1hosub2tbw 项目负责人 -->
                  </template>
                </a-form-item>
                <!-- end vid_p1o9ji244n 表单项容器_aui3jga5qb -->
              </a-col>
            </a-row>
            <!-- end vid_28sbp9us0m 布局容器_4pqlxb7d3o -->
            <!-- begin vid_1mad3hbrqh 布局容器_udkdzqvd84 -->
            <a-row class="vid_1mad3hbrqh" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_5skvzeolgn 表单项容器_a3p0mudxwg -->
                <a-form-item name="y_yphdlrbmny" :rules="n_46v5crtmxg_rules[`y_yphdlrbmny`]" class="vid_5skvzeolgn" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_hyw8pv81og 新建-营销人员-salerName -->
                  <a-select
                    class="vid_hyw8pv81og"
                    :mode="'multiple'"
                    :getPopupContainer="(node) => node.parentNode"
                    :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                    v-model:value="n_46v5crtmxg.y_yphdlrbmny"
                    :selected="vid_hyw8pv81og_props.selected"
                    :options="vid_hyw8pv81og_options()"
                    @change="handle_vid_hyw8pv81og_change"
                  >
                  </a-select>
                  <!-- end vid_hyw8pv81og 新建-营销人员-salerName -->
                  <template #label>
                    <!-- begin vid_ecfk43k7ph 营销人员 -->
                    <span class="vid_ecfk43k7ph"> 营销人员 </span>
                    <!-- end vid_ecfk43k7ph 营销人员 -->
                  </template>
                </a-form-item>
                <!-- end vid_5skvzeolgn 表单项容器_a3p0mudxwg -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_3amjca9l08 表单项容器_lhgubd0keg -->
                <a-form-item name="y_x1ef8en41h" :rules="n_46v5crtmxg_rules[`y_x1ef8en41h`]" class="vid_3amjca9l08" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_wvtox7jkqe 新增-项目干系人-projectStakeholders -->
                  <a-select
                    class="vid_wvtox7jkqe"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="n_46v5crtmxg.y_x1ef8en41h"
                    :showArrow="true"
                    :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                    :dropdownMatchSelectWidth="true"
                    :showSearch="true"
                    :placeholder="'请选择项目干系人'"
                    :allowClear="true"
                    :searchValue="vid_wvtox7jkqe_props.searchValue"
                    :selected="vid_wvtox7jkqe_props.selected"
                    :options="vid_wvtox7jkqe_options()"
                    @focus="handle_vid_wvtox7jkqe_focus"
                    @change="handle_vid_wvtox7jkqe_change"
                    @search="handle_vid_wvtox7jkqe_search"
                  >
                  </a-select>
                  <!-- end vid_wvtox7jkqe 新增-项目干系人-projectStakeholders -->
                  <template #label>
                    <!-- begin vid_dd92thsu3j 项目干系人 -->
                    <span class="vid_dd92thsu3j"> 项目干系人 </span>
                    <!-- end vid_dd92thsu3j 项目干系人 -->
                  </template>
                </a-form-item>
                <!-- end vid_3amjca9l08 表单项容器_lhgubd0keg -->
              </a-col>
            </a-row>
            <!-- end vid_1mad3hbrqh 布局容器_udkdzqvd84 -->
            <!-- begin vid_0g9knl3sdc 布局容器_po6cnzr792 -->
            <a-row class="vid_0g9knl3sdc" :gutter="16" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_dkv1fzcrj6 表单项容器_rhtw855ine -->
                <a-form-item name="creatEnclosure" :rules="n_46v5crtmxg_rules[`creatEnclosure`]" class="vid_dkv1fzcrj6" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_o2cy21an92 附件-attachment -->
                  <al-upload
                    class="vid_o2cy21an92"
                    :uploadFile="vid_o2cy21an92_props.uploadFile"
                    v-model:fileList="n_46v5crtmxg.creatEnclosure"
                    :textContent="'上传'"
                    :accept="'image/*,.xlsx,.xls,.docx'"
                    :action="'/file-storage/api/v1/file/upload'"
                  >
                  </al-upload>
                  <!-- end vid_o2cy21an92 附件-attachment -->
                  <template #label>
                    <!-- begin vid_vzf5ll3ovz 附件 -->
                    <span class="vid_vzf5ll3ovz"> 附件 </span>
                    <!-- end vid_vzf5ll3ovz 附件 -->
                  </template>
                </a-form-item>
                <!-- end vid_dkv1fzcrj6 表单项容器_rhtw855ine -->
              </a-col>
              <a-col :span="12"> </a-col>
            </a-row>
            <!-- end vid_0g9knl3sdc 布局容器_po6cnzr792 -->
            <!-- begin vid_84qgooezr9 布局容器_b7u9omv1t7 -->
            <a-row class="vid_84qgooezr9" :slots="'24'">
              <a-col :span="24">
                <!-- begin vid_3rpfavpjpn 表单项容器_2zq8xs2qcy -->
                <a-form-item name="l_h1y4n5dqrl" :rules="n_46v5crtmxg_rules[`l_h1y4n5dqrl`]" class="vid_3rpfavpjpn" :label-col='{"span":4}' :wrapper-col='{"span":20}'>
                  <!-- begin vid_l38xzzg6dc 项目描述-description -->
                  <a-textarea class="vid_l38xzzg6dc" v-model:value="n_46v5crtmxg.l_h1y4n5dqrl" :placeholder="'请输入内容'"> </a-textarea>
                  <!-- end vid_l38xzzg6dc 项目描述-description -->
                  <template #label>
                    <!-- begin vid_7cxq2wiksf 项目描述 -->
                    <span class="vid_7cxq2wiksf"> 项目描述 </span>
                    <!-- end vid_7cxq2wiksf 项目描述 -->
                  </template>
                </a-form-item>
                <!-- end vid_3rpfavpjpn 表单项容器_2zq8xs2qcy -->
              </a-col>
            </a-row>
            <!-- end vid_84qgooezr9 布局容器_b7u9omv1t7 -->
          </a-form>
          <!-- end vid_om6xs2pbh0 表单容器_h4avw5u5oa -->
        </al-box>
        <!-- end vid_wema9l87ch 容器_ms84pu9h1o -->
      </a-modal>
      <!-- end vid_jlz2iy5yjj 新建项目 -->
      <!-- begin vid_hkf53ba1mm 编辑项目 -->
      <a-modal
        class="vid_hkf53ba1mm"
        v-model:visible="vid_hkf53ba1mm_props.visible"
        :centered="true"
        :title="'编辑项目'"
        :maskClosable="false"
        :width="800"
        :okText="'保存'"
        @cancel="handle_vid_hkf53ba1mm_cancel"
        @ok="handle_vid_hkf53ba1mm_ok"
      >
        <!-- begin vid_iazs2oy50w 表单容器_9co2te3rru -->
        <a-form ref="vid_iazs2oy50w_ref" class="vid_iazs2oy50w" :model="k_y80wm4oz2j" :formModel="vid_iazs2oy50w_props.formModel">
          <!-- begin vid_q02p111av2 布局容器_my1ovx1sqz -->
          <a-row class="vid_q02p111av2" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_1eoerpwe81 表单项容器_ext0s7z2n7 -->
              <a-form-item name="l_xivbuqh2nr" :rules="k_y80wm4oz2j_rules[`l_xivbuqh2nr`]" class="vid_1eoerpwe81" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_zkvqhsm3md 下拉树_5wfsri9j9r -->
                <a-tree-select
                  class="vid_zkvqhsm3md"
                  :treeNodeFilterProp="'projectName'"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.l_xivbuqh2nr"
                  :fieldNames="{'children':'children','label':'projectName','value':'projectId','key':'projectId'}"
                  :dropdownMatchSelectWidth="false"
                  :showSearch="true"
                  :placeholder="'请选择项目菜单'"
                  :allowClear="true"
                  :selected="vid_zkvqhsm3md_props.selected"
                  :treeData="vid_zkvqhsm3md_options()"
                  @change="handle_vid_zkvqhsm3md_change"
                >
                </a-tree-select>
                <!-- end vid_zkvqhsm3md 下拉树_5wfsri9j9r -->
                <template #label>
                  <!-- begin vid_5ixs3wzeeu 项目关联菜单 -->
                  <span class="vid_5ixs3wzeeu"> 项目关联菜单 </span>
                  <!-- end vid_5ixs3wzeeu 项目关联菜单 -->
                </template>
              </a-form-item>
              <!-- end vid_1eoerpwe81 表单项容器_ext0s7z2n7 -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_vfilewdnkt 表单项容器_wlgc7003fw -->
              <a-form-item name="v_pef30hiy2p" :rules="k_y80wm4oz2j_rules[`v_pef30hiy2p`]" class="vid_vfilewdnkt" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_nyryuu14uk 编辑项目_项目名称_projectName -->
                <a-input autocomplete="off" class="vid_nyryuu14uk" v-model:value="k_y80wm4oz2j.v_pef30hiy2p" :placeholder="'请输入项目名称'"> </a-input>
                <!-- end vid_nyryuu14uk 编辑项目_项目名称_projectName -->
                <template #label>
                  <!-- begin vid_h2bhpozule 简单文本_0e8ly6xie0 -->
                  <span class="vid_h2bhpozule"> 项目名称 </span>
                  <!-- end vid_h2bhpozule 简单文本_0e8ly6xie0 -->
                </template>
              </a-form-item>
              <!-- end vid_vfilewdnkt 表单项容器_wlgc7003fw -->
            </a-col>
          </a-row>
          <!-- end vid_q02p111av2 布局容器_my1ovx1sqz -->
          <!-- begin vid_vne9p2ptku 布局容器_3mbd851hci -->
          <a-row class="vid_vne9p2ptku" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_wsygvgd84b 表单项容器_kbdpy37r01 -->
              <a-form-item name="x_iyo4gqzs4s" :rules="k_y80wm4oz2j_rules[`x_iyo4gqzs4s`]" class="vid_wsygvgd84b" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_bys2n8ty35 编辑项目_售前编码_preSalesCode -->
                <a-input autocomplete="off" class="vid_bys2n8ty35" v-model:value="k_y80wm4oz2j.x_iyo4gqzs4s" :placeholder="'请输入售前编码'"> </a-input>
                <!-- end vid_bys2n8ty35 编辑项目_售前编码_preSalesCode -->
                <template #label>
                  <!-- begin vid_lqc0r1cniq 简单文本_rnx0ko87n6 -->
                  <span class="vid_lqc0r1cniq"> 售前编码 </span>
                  <!-- end vid_lqc0r1cniq 简单文本_rnx0ko87n6 -->
                </template>
              </a-form-item>
              <!-- end vid_wsygvgd84b 表单项容器_kbdpy37r01 -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_9cu3xloj9n 表单项容器_5hjj3vcbyo -->
              <a-form-item name="f_zrlkqb6rbh" :rules="k_y80wm4oz2j_rules[`f_zrlkqb6rbh`]" class="vid_9cu3xloj9n" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_dxgc1sm1o6 编辑项目_项目代号_projectCode -->
                <a-input autocomplete="off" class="vid_dxgc1sm1o6" v-model:value="k_y80wm4oz2j.f_zrlkqb6rbh" :placeholder="'请输入项目代号'"> </a-input>
                <!-- end vid_dxgc1sm1o6 编辑项目_项目代号_projectCode -->
                <template #label>
                  <!-- begin vid_j9u5bod7ys 简单文本_y5sh28w98o -->
                  <span class="vid_j9u5bod7ys"> 项目代号 </span>
                  <!-- end vid_j9u5bod7ys 简单文本_y5sh28w98o -->
                </template>
              </a-form-item>
              <!-- end vid_9cu3xloj9n 表单项容器_5hjj3vcbyo -->
            </a-col>
          </a-row>
          <!-- end vid_vne9p2ptku 布局容器_3mbd851hci -->
          <!-- begin vid_ipw6tbjym4 布局容器_ob614wlygw -->
          <a-row class="vid_ipw6tbjym4" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_uxysxsco2y 表单项容器_gudewdmzso -->
              <a-form-item name="j_cory7m4cki" :rules="k_y80wm4oz2j_rules[`j_cory7m4cki`]" class="vid_uxysxsco2y" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_e3jxf416hx 编辑项目_项目类型_projectType -->
                <a-select
                  class="vid_e3jxf416hx"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.j_cory7m4cki"
                  :showArrow="true"
                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                  :dropdownMatchSelectWidth="true"
                  :showSearch="true"
                  :placeholder="'请选择项目类型'"
                  :allowClear="true"
                  :searchValue="vid_e3jxf416hx_props.searchValue"
                  :selected="vid_e3jxf416hx_props.selected"
                  :options="vid_e3jxf416hx_options()"
                  @change="handle_vid_e3jxf416hx_change"
                  @search="handle_vid_e3jxf416hx_search"
                >
                </a-select>
                <!-- end vid_e3jxf416hx 编辑项目_项目类型_projectType -->
                <template #label>
                  <!-- begin vid_xnvqqe07ra 简单文本_2ak5hcxmfv -->
                  <span class="vid_xnvqqe07ra"> 项目类型 </span>
                  <!-- end vid_xnvqqe07ra 简单文本_2ak5hcxmfv -->
                </template>
              </a-form-item>
              <!-- end vid_uxysxsco2y 表单项容器_gudewdmzso -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_22l8hdiw6j 表单项容器_vcj0e5rdkj -->
              <a-form-item name="e_kka7gatmrf" :rules="k_y80wm4oz2j_rules[`e_kka7gatmrf`]" class="vid_22l8hdiw6j" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_3l3yrsbye7 编辑项目_项目编码_projectNumber -->
                <a-input autocomplete="off" class="vid_3l3yrsbye7" v-model:value="k_y80wm4oz2j.e_kka7gatmrf" :placeholder="'请输入项目编码'"> </a-input>
                <!-- end vid_3l3yrsbye7 编辑项目_项目编码_projectNumber -->
                <template #label>
                  <!-- begin vid_1fuf5ojnb0 简单文本_em0hjzz9rk -->
                  <span class="vid_1fuf5ojnb0"> 项目编码 </span>
                  <!-- end vid_1fuf5ojnb0 简单文本_em0hjzz9rk -->
                </template>
              </a-form-item>
              <!-- end vid_22l8hdiw6j 表单项容器_vcj0e5rdkj -->
            </a-col>
          </a-row>
          <!-- end vid_ipw6tbjym4 布局容器_ob614wlygw -->
          <!-- begin vid_eduoewr3g4 布局容器_y49c4un1fy -->
          <a-row class="vid_eduoewr3g4" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_m5z5k3lk5k 表单项容器_uravzx6qob -->
              <a-form-item name="s_90q4pxtsdn" :rules="k_y80wm4oz2j_rules[`s_90q4pxtsdn`]" class="vid_m5z5k3lk5k" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_thqd5koc29 编辑项目_项目交付编码_deliverCode -->
                <a-input autocomplete="off" class="vid_thqd5koc29" v-model:value="k_y80wm4oz2j.s_90q4pxtsdn" :placeholder="'请输入项目交付编码'"> </a-input>
                <!-- end vid_thqd5koc29 编辑项目_项目交付编码_deliverCode -->
                <template #label>
                  <!-- begin vid_bfuxf4srgx 简单文本_f83m5qtaog -->
                  <span class="vid_bfuxf4srgx"> 项目交付编码 </span>
                  <!-- end vid_bfuxf4srgx 简单文本_f83m5qtaog -->
                </template>
              </a-form-item>
              <!-- end vid_m5z5k3lk5k 表单项容器_uravzx6qob -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_lg8ndcebfx 表单项容器_ngdujo373h -->
              <a-form-item name="n_wo99z2x7u3" :rules="k_y80wm4oz2j_rules[`n_wo99z2x7u3`]" class="vid_lg8ndcebfx" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_a9fonyqqx4 编辑项目_项目开始时间_startTime -->
                <a-date-picker
                  class="vid_a9fonyqqx4"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.n_wo99z2x7u3"
                  :valueFormat="'YYYY-MM-DD'"
                  :placeholder="'请选择项目开始时间'"
                  :showTime="vid_a9fonyqqx4_props.showTime"
                >
                </a-date-picker>
                <!-- end vid_a9fonyqqx4 编辑项目_项目开始时间_startTime -->
                <template #label>
                  <!-- begin vid_1hb5b9m5ub 简单文本_7s7lxziagv -->
                  <span class="vid_1hb5b9m5ub"> 项目开始时间 </span>
                  <!-- end vid_1hb5b9m5ub 简单文本_7s7lxziagv -->
                </template>
              </a-form-item>
              <!-- end vid_lg8ndcebfx 表单项容器_ngdujo373h -->
            </a-col>
          </a-row>
          <!-- end vid_eduoewr3g4 布局容器_y49c4un1fy -->
          <!-- begin vid_upt3hiwuwu 布局容器_inrs2t5mim -->
          <a-row class="vid_upt3hiwuwu" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_87uq99a1l8 表单项容器_ampupl3scl -->
              <a-form-item name="z_yov8nipnbo" :rules="k_y80wm4oz2j_rules[`z_yov8nipnbo`]" class="vid_87uq99a1l8" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_aokvitshm5 编辑项目_项目上线时间_deliveryTime -->
                <a-date-picker
                  class="vid_aokvitshm5"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.z_yov8nipnbo"
                  :valueFormat="'YYYY-MM-DD'"
                  :placeholder="'请选择项目上线时间'"
                  :showTime="vid_aokvitshm5_props.showTime"
                >
                </a-date-picker>
                <!-- end vid_aokvitshm5 编辑项目_项目上线时间_deliveryTime -->
                <template #label>
                  <!-- begin vid_xi19xn2ii8 简单文本_qujaoc1xxz -->
                  <span class="vid_xi19xn2ii8"> 项目上线时间 </span>
                  <!-- end vid_xi19xn2ii8 简单文本_qujaoc1xxz -->
                </template>
              </a-form-item>
              <!-- end vid_87uq99a1l8 表单项容器_ampupl3scl -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_o90tjnr5bd 表单项容器_cqzc5g80o4 -->
              <a-form-item name="c_paxeg92moe" :rules="k_y80wm4oz2j_rules[`c_paxeg92moe`]" class="vid_o90tjnr5bd" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_5y8ochqm2l 编辑项目_项目验收时间_acceptanceTime -->
                <a-date-picker
                  class="vid_5y8ochqm2l"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.c_paxeg92moe"
                  :valueFormat="'YYYY-MM-DD'"
                  :placeholder="'请选择项目验收时间'"
                  :showTime="vid_5y8ochqm2l_props.showTime"
                >
                </a-date-picker>
                <!-- end vid_5y8ochqm2l 编辑项目_项目验收时间_acceptanceTime -->
                <template #label>
                  <!-- begin vid_g45d76t8vv 简单文本_lsd6s4ki53 -->
                  <span class="vid_g45d76t8vv"> 项目验收时间 </span>
                  <!-- end vid_g45d76t8vv 简单文本_lsd6s4ki53 -->
                </template>
              </a-form-item>
              <!-- end vid_o90tjnr5bd 表单项容器_cqzc5g80o4 -->
            </a-col>
          </a-row>
          <!-- end vid_upt3hiwuwu 布局容器_inrs2t5mim -->
          <!-- begin vid_cz42fu4nvl 布局容器_30o8d5y5cc -->
          <a-row class="vid_cz42fu4nvl" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_8rjlvcwjsq 表单项容器_lh8emvymt7 -->
              <a-form-item name="k_ogej9eytbu" :rules="k_y80wm4oz2j_rules[`k_ogej9eytbu`]" class="vid_8rjlvcwjsq" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_5q1g3fyl1w 编辑项目_项目结束时间_endTime -->
                <a-date-picker
                  class="vid_5q1g3fyl1w"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.k_ogej9eytbu"
                  :valueFormat="'YYYY-MM-DD'"
                  :placeholder="'请选择项目结束时间'"
                  :showTime="vid_5q1g3fyl1w_props.showTime"
                >
                </a-date-picker>
                <!-- end vid_5q1g3fyl1w 编辑项目_项目结束时间_endTime -->
                <template #label>
                  <!-- begin vid_yrxqnlxyza 简单文本_pwjxwy98y1 -->
                  <span class="vid_yrxqnlxyza"> 项目结束时间 </span>
                  <!-- end vid_yrxqnlxyza 简单文本_pwjxwy98y1 -->
                </template>
              </a-form-item>
              <!-- end vid_8rjlvcwjsq 表单项容器_lh8emvymt7 -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_nxi4m9om6a 表单项容器_u7edsnwsrp -->
              <a-form-item name="departmentName" :rules="k_y80wm4oz2j_rules[`departmentName`]" class="vid_nxi4m9om6a" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_lwrjgnl5hk 编辑下拉树_departmentName -->
                <a-tree-select
                  class="vid_lwrjgnl5hk"
                  :treeNodeFilterProp="'name'"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.departmentName"
                  :fieldNames="{'children':'children','label':'name','value':'name','key':'id'}"
                  :dropdownMatchSelectWidth="false"
                  :showSearch="true"
                  :placeholder="'请选择申请人所在部门'"
                  :allowClear="true"
                  :selected="vid_lwrjgnl5hk_props.selected"
                  :treeData="vid_lwrjgnl5hk_options()"
                  @change="handle_vid_lwrjgnl5hk_change"
                >
                </a-tree-select>
                <!-- end vid_lwrjgnl5hk 编辑下拉树_departmentName -->
                <template #label>
                  <!-- begin vid_ybwkii1wp7 简单文本_7hrbtftb5i -->
                  <span class="vid_ybwkii1wp7"> 申请人所在部门 </span>
                  <!-- end vid_ybwkii1wp7 简单文本_7hrbtftb5i -->
                </template>
              </a-form-item>
              <!-- end vid_nxi4m9om6a 表单项容器_u7edsnwsrp -->
            </a-col>
          </a-row>
          <!-- end vid_cz42fu4nvl 布局容器_30o8d5y5cc -->
          <!-- begin vid_m9r2j9ppxb 布局容器_v2h6rgnke0 -->
          <a-row class="vid_m9r2j9ppxb" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_2nv5px7t6t 表单项容器_w5hha7jgo6 -->
              <a-form-item name="t_209sj57mko" :rules="k_y80wm4oz2j_rules[`t_209sj57mko`]" class="vid_2nv5px7t6t" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_p459smma70 编辑项目_项目经理_pmName -->
                <a-select
                  class="vid_p459smma70"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.t_209sj57mko"
                  :showArrow="true"
                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                  :dropdownMatchSelectWidth="true"
                  :showSearch="true"
                  :placeholder="'请选择项目经理'"
                  :allowClear="true"
                  :searchValue="vid_p459smma70_props.searchValue"
                  :selected="vid_p459smma70_props.selected"
                  :options="vid_p459smma70_options()"
                  @change="handle_vid_p459smma70_change"
                  @search="handle_vid_p459smma70_search"
                >
                </a-select>
                <!-- end vid_p459smma70 编辑项目_项目经理_pmName -->
                <template #label>
                  <!-- begin vid_10wts0r7hu 简单文本_0ayf73i5xa -->
                  <span class="vid_10wts0r7hu"> 项目经理 </span>
                  <!-- end vid_10wts0r7hu 简单文本_0ayf73i5xa -->
                </template>
              </a-form-item>
              <!-- end vid_2nv5px7t6t 表单项容器_w5hha7jgo6 -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_u7z5tz4h17 表单项容器_vbjio2sr7d -->
              <a-form-item name="k_12cajpmxf1" :rules="k_y80wm4oz2j_rules[`k_12cajpmxf1`]" class="vid_u7z5tz4h17" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_a8y8q0rvsj 编辑项目_项目负责人_plName -->
                <a-select
                  class="vid_a8y8q0rvsj"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.k_12cajpmxf1"
                  :showArrow="true"
                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                  :dropdownMatchSelectWidth="true"
                  :showSearch="true"
                  :placeholder="'请选择项目负责人'"
                  :allowClear="true"
                  :searchValue="vid_a8y8q0rvsj_props.searchValue"
                  :selected="vid_a8y8q0rvsj_props.selected"
                  :options="vid_a8y8q0rvsj_options()"
                  @change="handle_vid_a8y8q0rvsj_change"
                  @search="handle_vid_a8y8q0rvsj_search"
                >
                </a-select>
                <!-- end vid_a8y8q0rvsj 编辑项目_项目负责人_plName -->
                <template #label>
                  <!-- begin vid_jeic3y0f9a 简单文本_ubx306zn9g -->
                  <span class="vid_jeic3y0f9a"> 项目负责人 </span>
                  <!-- end vid_jeic3y0f9a 简单文本_ubx306zn9g -->
                </template>
              </a-form-item>
              <!-- end vid_u7z5tz4h17 表单项容器_vbjio2sr7d -->
            </a-col>
          </a-row>
          <!-- end vid_m9r2j9ppxb 布局容器_v2h6rgnke0 -->
          <!-- begin vid_alu7ixfoit 布局容器_3ipa5rxvbc -->
          <a-row class="vid_alu7ixfoit" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_sec4mmkdt8 表单项容器_c721wk2yhv -->
              <a-form-item name="k_qz1ske7f6t" :rules="k_y80wm4oz2j_rules[`k_qz1ske7f6t`]" class="vid_sec4mmkdt8" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_zt2wam5umw 编辑-营销人员-salerName -->
                <a-select
                  class="vid_zt2wam5umw"
                  :mode="'multiple'"
                  :getPopupContainer="(node) => node.parentNode"
                  :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                  v-model:value="k_y80wm4oz2j.k_qz1ske7f6t"
                  :selected="vid_zt2wam5umw_props.selected"
                  :options="vid_zt2wam5umw_options()"
                  @change="handle_vid_zt2wam5umw_change"
                >
                </a-select>
                <!-- end vid_zt2wam5umw 编辑-营销人员-salerName -->
                <template #label>
                  <!-- begin vid_9yptpatb4w 营销人员_hpfoql47ai -->
                  <span class="vid_9yptpatb4w"> 营销人员 </span>
                  <!-- end vid_9yptpatb4w 营销人员_hpfoql47ai -->
                </template>
              </a-form-item>
              <!-- end vid_sec4mmkdt8 表单项容器_c721wk2yhv -->
            </a-col>
            <a-col :span="12">
              <!-- begin vid_2z7m29ys7k 表单项容器_zrwm8wiuk8 -->
              <a-form-item name="a_bmp3qioph4" :rules="k_y80wm4oz2j_rules[`a_bmp3qioph4`]" class="vid_2z7m29ys7k" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_yibvw5rcmz 编辑_项目干系人_projectStakeholders -->
                <a-select
                  class="vid_yibvw5rcmz"
                  :getPopupContainer="(node) => node.parentNode"
                  v-model:value="k_y80wm4oz2j.a_bmp3qioph4"
                  :showArrow="true"
                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                  :dropdownMatchSelectWidth="true"
                  :showSearch="true"
                  :placeholder="'请选择项目干系人'"
                  :allowClear="true"
                  :searchValue="vid_yibvw5rcmz_props.searchValue"
                  :selected="vid_yibvw5rcmz_props.selected"
                  :options="vid_yibvw5rcmz_options()"
                  @focus="handle_vid_yibvw5rcmz_focus"
                  @change="handle_vid_yibvw5rcmz_change"
                  @search="handle_vid_yibvw5rcmz_search"
                >
                </a-select>
                <!-- end vid_yibvw5rcmz 编辑_项目干系人_projectStakeholders -->
                <template #label>
                  <!-- begin vid_eort7auw38 项目干系人 -->
                  <span class="vid_eort7auw38"> 项目干系人 </span>
                  <!-- end vid_eort7auw38 项目干系人 -->
                </template>
              </a-form-item>
              <!-- end vid_2z7m29ys7k 表单项容器_zrwm8wiuk8 -->
            </a-col>
          </a-row>
          <!-- end vid_alu7ixfoit 布局容器_3ipa5rxvbc -->
          <!-- begin vid_oq9zjb9opw 布局容器_vtlkl75yad -->
          <a-row class="vid_oq9zjb9opw" :slots="'12:12'">
            <a-col :span="12">
              <!-- begin vid_eevmnclhuk 表单项容器_6kv3vxbxrb -->
              <a-form-item name="p_1b5gmxlvs7" :rules="k_y80wm4oz2j_rules[`p_1b5gmxlvs7`]" class="vid_eevmnclhuk" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                <!-- begin vid_akpq5tpjch 文件上传_nqxxri6r1f -->
                <al-upload
                  class="vid_akpq5tpjch"
                  :uploadFile="vid_akpq5tpjch_props.uploadFile"
                  v-model:fileList="k_y80wm4oz2j.p_1b5gmxlvs7"
                  :textContent="'上传'"
                  :listType="'Text'"
                  :accept="'image/*,.xlsx,.xls,.docx'"
                  :action="'/file-storage/api/v1/file/upload'"
                >
                </al-upload>
                <!-- end vid_akpq5tpjch 文件上传_nqxxri6r1f -->
                <template #label>
                  <!-- begin vid_m5jy7xs7mo 简单文本_kdgmqz6z3o -->
                  <span class="vid_m5jy7xs7mo"> 附件 </span>
                  <!-- end vid_m5jy7xs7mo 简单文本_kdgmqz6z3o -->
                </template>
              </a-form-item>
              <!-- end vid_eevmnclhuk 表单项容器_6kv3vxbxrb -->
            </a-col>
            <a-col :span="12"> </a-col>
          </a-row>
          <!-- end vid_oq9zjb9opw 布局容器_vtlkl75yad -->
          <!-- begin vid_tn40kvrrca 布局容器_19k78dzwcy -->
          <a-row class="vid_tn40kvrrca" :slots="'24'">
            <a-col :span="24">
              <!-- begin vid_g16af5f96z 表单项容器_xiujvldicp -->
              <a-form-item name="b_5dur7n82nh" :rules="k_y80wm4oz2j_rules[`b_5dur7n82nh`]" class="vid_g16af5f96z" :label-col='{"span":4}' :wrapper-col='{"span":20}'>
                <!-- begin vid_71a9kgjal6 编辑项目_项目描述_description -->
                <a-textarea class="vid_71a9kgjal6" v-model:value="k_y80wm4oz2j.b_5dur7n82nh" :placeholder="'请输入项目描述'"> </a-textarea>
                <!-- end vid_71a9kgjal6 编辑项目_项目描述_description -->
                <template #label>
                  <!-- begin vid_4qht4i5xir 简单文本_98onaenqea -->
                  <span class="vid_4qht4i5xir"> 项目描述 </span>
                  <!-- end vid_4qht4i5xir 简单文本_98onaenqea -->
                </template>
              </a-form-item>
              <!-- end vid_g16af5f96z 表单项容器_xiujvldicp -->
            </a-col>
          </a-row>
          <!-- end vid_tn40kvrrca 布局容器_19k78dzwcy -->
        </a-form>
        <!-- end vid_iazs2oy50w 表单容器_9co2te3rru -->
      </a-modal>
      <!-- end vid_hkf53ba1mm 编辑项目 -->
      <!-- begin vid_afcizir8di 删除项目 -->
      <a-modal
        class="vid_afcizir8di"
        v-model:visible="vid_afcizir8di_props.visible"
        :centered="true"
        :title="'删除'"
        :maskClosable="false"
        :width="320"
        @cancel="handle_vid_afcizir8di_cancel"
        @ok="handle_vid_afcizir8di_ok"
      >
        <!-- begin vid_mi2lo0rwma 确认删除此项目吗？ -->
        <span class="vid_mi2lo0rwma"> 确认删除此项目吗？ </span>
        <!-- end vid_mi2lo0rwma 确认删除此项目吗？ -->
      </a-modal>
      <!-- end vid_afcizir8di 删除项目 -->
      <!-- begin vid_9crzoz0cys 删除任务 -->
      <a-modal
        class="vid_9crzoz0cys"
        v-model:visible="vid_9crzoz0cys_props.visible"
        :centered="true"
        :title="'删除'"
        :maskClosable="false"
        :width="320"
        @cancel="handle_vid_9crzoz0cys_cancel"
        @ok="handle_vid_9crzoz0cys_ok"
      >
        <!-- begin vid_jkwxpkvo35 简单文本_tbahn9km77 -->
        <span class="vid_jkwxpkvo35"> 确认删除此项目吗？ </span>
        <!-- end vid_jkwxpkvo35 简单文本_tbahn9km77 -->
      </a-modal>
      <!-- end vid_9crzoz0cys 删除任务 -->
      <!-- begin vid_emxoj1ks3o 删除里程碑 -->
      <a-modal
        class="vid_emxoj1ks3o"
        v-model:visible="vid_emxoj1ks3o_props.visible"
        :centered="true"
        :title="'删除'"
        :maskClosable="false"
        :width="320"
        @cancel="handle_vid_emxoj1ks3o_cancel"
        @ok="handle_vid_emxoj1ks3o_ok"
      >
        <!-- begin vid_4fpsdh22mt 确认删除此里程碑吗？ -->
        <span class="vid_4fpsdh22mt"> 确认删除此里程碑吗？ </span>
        <!-- end vid_4fpsdh22mt 确认删除此里程碑吗？ -->
      </a-modal>
      <!-- end vid_emxoj1ks3o 删除里程碑 -->
      <!-- begin vid_ujuoy3urqm 编辑里程碑 -->
      <a-modal
        class="vid_ujuoy3urqm"
        v-model:visible="vid_ujuoy3urqm_props.visible"
        :centered="true"
        :title="'编辑里程碑'"
        :maskClosable="false"
        :width="900"
        :okText="'保存'"
        @ok="handle_vid_ujuoy3urqm_ok"
      >
        <!-- begin vid_ptqzr22zsl 表单容器_1hboi5y5pn -->
        <a-form ref="vid_ptqzr22zsl_ref" class="vid_ptqzr22zsl" :model="a_3lhu5f974z" :formModel="vid_ptqzr22zsl_props.formModel">
          <!-- begin vid_cztbzs6qac 容器_trbxkapwv6 -->
          <al-box class="vid_cztbzs6qac">
            <!-- begin vid_gguxbzg5lk 布局容器_fvsnwlboss -->
            <a-row class="vid_gguxbzg5lk" :slots="'11:11:12:12:24'">
              <a-col :span="11">
                <!-- begin vid_t76co8ywm3 表单项容器_vb5ixyvdkz -->
                <a-form-item name="t_qkz3lpi7yi" :rules="a_3lhu5f974z_rules[`t_qkz3lpi7yi`]" class="vid_t76co8ywm3" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_68rzqstn2n 项目阶段_projectPhaseId -->
                  <a-select
                    class="vid_68rzqstn2n"
                    :getPopupContainer="(node) => node.parentNode"
                    v-model:value="a_3lhu5f974z.t_qkz3lpi7yi"
                    :showArrow="true"
                    :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                    :dropdownMatchSelectWidth="true"
                    :showSearch="true"
                    :placeholder="'请选择'"
                    :allowClear="true"
                    :searchValue="vid_68rzqstn2n_props.searchValue"
                    :selected="vid_68rzqstn2n_props.selected"
                    :options="vid_68rzqstn2n_options()"
                    @change="handle_vid_68rzqstn2n_change"
                    @search="handle_vid_68rzqstn2n_search"
                  >
                  </a-select>
                  <!-- end vid_68rzqstn2n 项目阶段_projectPhaseId -->
                  <template #label>
                    <!-- begin vid_1yubz1excx 简单文本_0255hra367 -->
                    <span class="vid_1yubz1excx"> 关联项目阶段 </span>
                    <!-- end vid_1yubz1excx 简单文本_0255hra367 -->
                  </template>
                </a-form-item>
                <!-- end vid_t76co8ywm3 表单项容器_vb5ixyvdkz -->
                <!-- begin vid_muojo6rwnx 表单项容器_16rk4bjf4v -->
                <a-form-item name="x_hr145u2ydk" :rules="a_3lhu5f974z_rules[`x_hr145u2ydk`]" class="vid_muojo6rwnx" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_5tjhl64f1p 输入框_ylt0lgmd4h -->
                  <a-input autocomplete="off" class="vid_5tjhl64f1p" v-model:value="a_3lhu5f974z.x_hr145u2ydk" :placeholder="'请输入'"> </a-input>
                  <!-- end vid_5tjhl64f1p 输入框_ylt0lgmd4h -->
                  <template #label>
                    <!-- begin vid_c5pu6ibjc3 里程碑预算 -->
                    <span class="vid_c5pu6ibjc3"> 里程碑预算 </span>
                    <!-- end vid_c5pu6ibjc3 里程碑预算 -->
                  </template>
                </a-form-item>
                <!-- end vid_muojo6rwnx 表单项容器_16rk4bjf4v -->
              </a-col>
              <a-col :span="11">
                <!-- begin vid_uknumlt3hu 表单项容器_9ctlciscy6 -->
                <a-form-item name="x_xtbh5m2572" :rules="a_3lhu5f974z_rules[`x_xtbh5m2572`]" class="vid_uknumlt3hu" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                  <!-- begin vid_qxvydd7fbv 里程碑名称_milepostName -->
                  <a-input autocomplete="off" class="vid_qxvydd7fbv" v-model:value="a_3lhu5f974z.x_xtbh5m2572" :placeholder="'请输入'"> </a-input>
                  <!-- end vid_qxvydd7fbv 里程碑名称_milepostName -->
                  <template #label>
                    <!-- begin vid_zgectnkhmt 简单文本_ejkt0ml4bu -->
                    <span class="vid_zgectnkhmt"> 里程碑名称 </span>
                    <!-- end vid_zgectnkhmt 简单文本_ejkt0ml4bu -->
                  </template>
                </a-form-item>
                <!-- end vid_uknumlt3hu 表单项容器_9ctlciscy6 -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_e0cvsdvjdg 简单文本_ov2nybdvpb -->
                <span class="vid_e0cvsdvjdg"> 任务编辑 </span>
                <!-- end vid_e0cvsdvjdg 简单文本_ov2nybdvpb -->
              </a-col>
              <a-col :span="12"> </a-col>
              <a-col :span="24">
                <!-- begin vid_yjblciotaj 布局容器_kbby35s9rw -->
                <a-row class="vid_yjblciotaj" :slots="'24'">
                  <a-col :span="24">
                    <!-- begin vid_3wfw4huqrs 表单项容器_pofxniwdkw -->
                    <a-form-item name="v_hynrohj8rz" :rules="a_3lhu5f974z_rules[`v_hynrohj8rz`]" class="vid_3wfw4huqrs" :label-col='{"span":24}' :wrapper-col='{"span":24}'>
                      <!-- begin vid_10nqlbbc7q 编辑动作列表 -->
                      <al-action-list
                        data-field-key="v_hynrohj8rz"
                        class="vid_10nqlbbc7q"
                        v-model:dataSource="a_3lhu5f974z.v_hynrohj8rz"
                        v-model:extendDataSource="vid_10nqlbbc7q_props.dataSource"
                        v-model:current="vid_10nqlbbc7q_props.current"
                        v-model:currentIndex="vid_10nqlbbc7q_props.currentIndex"
                        :deleteLineHeight="60"
                      >
                        <template #default="vid_10nqlbbc7q_dataItem">
                          <!-- begin vid_2jra8sxbek 布局容器_wagrw17qca -->
                          <a-row :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_2jra8sxbek" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_3ug0covbj2 表单项容器_1i9djeuwe4 -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`taskName`)"
                                :rules="a_3lhu5f974z_rules[`taskName`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_3ug0covbj2"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_wfrvoo9out 任务名称_taskName -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_wfrvoo9out"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.taskName"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_wfrvoo9out 任务名称_taskName -->
                                <template #label>
                                  <!-- begin vid_dr27nb52bv 简单文本_6551vjx8w6 -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_dr27nb52bv"> 任务名称 </span>
                                  <!-- end vid_dr27nb52bv 简单文本_6551vjx8w6 -->
                                </template>
                              </a-form-item>
                              <!-- end vid_3ug0covbj2 表单项容器_1i9djeuwe4 -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_t8nwggwhk5 表单项容器_x4totf50qt -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`taskDependencyArray`)"
                                :rules="a_3lhu5f974z_rules[`taskDependencyArray`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_t8nwggwhk5"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_rwmvgn46dt 依赖任务_taskDependency -->
                                <a-select
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_rwmvgn46dt"
                                  :mode="'multiple'"
                                  :getPopupContainer="(node) => node.parentNode"
                                  :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.taskDependencyArray"
                                  :showArrow="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :allowClear="true"
                                  :selected="vid_rwmvgn46dt_props.selected"
                                  :options="vid_rwmvgn46dt_options()"
                                  @focus="handle_vid_rwmvgn46dt_focus"
                                  @change="handle_vid_rwmvgn46dt_change"
                                >
                                </a-select>
                                <!-- end vid_rwmvgn46dt 依赖任务_taskDependency -->
                                <template #label>
                                  <!-- begin vid_himxy4hcqc 简单文本_uat6z72lmb -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_himxy4hcqc"> 依赖任务 </span>
                                  <!-- end vid_himxy4hcqc 简单文本_uat6z72lmb -->
                                </template>
                              </a-form-item>
                              <!-- end vid_t8nwggwhk5 表单项容器_x4totf50qt -->
                            </a-col>
                          </a-row>
                          <!-- end vid_2jra8sxbek 布局容器_wagrw17qca -->
                          <!-- begin vid_scuvls30dj 布局容器_3dso6s8gez -->
                          <a-row :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_scuvls30dj" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_3ekfvlo9bn 表单项容器_lcby1x0qik -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`taskOwner`)"
                                :rules="a_3lhu5f974z_rules[`taskOwner`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_3ekfvlo9bn"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_q7deknz720 任务负责人_taskOwner -->
                                <a-select
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_q7deknz720"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.taskOwner"
                                  :showArrow="true"
                                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                  :dropdownMatchSelectWidth="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :allowClear="true"
                                  :searchValue="vid_q7deknz720_props.searchValue"
                                  :selected="vid_q7deknz720_props.selected"
                                  :options="vid_q7deknz720_options()"
                                  @change="handle_vid_q7deknz720_change"
                                  @search="handle_vid_q7deknz720_search"
                                >
                                </a-select>
                                <!-- end vid_q7deknz720 任务负责人_taskOwner -->
                                <template #label>
                                  <!-- begin vid_pde369ieg6 简单文本_ggzxqu5j1g -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_pde369ieg6"> 任务负责人 </span>
                                  <!-- end vid_pde369ieg6 简单文本_ggzxqu5j1g -->
                                </template>
                              </a-form-item>
                              <!-- end vid_3ekfvlo9bn 表单项容器_lcby1x0qik -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_12vx7j7xh6 表单项容器_cgm5o9iptr -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`taskParticipantArray`)"
                                :rules="a_3lhu5f974z_rules[`taskParticipantArray`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_12vx7j7xh6"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_727os2vxmi 任务参与人_taskParticipant -->
                                <a-select
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_727os2vxmi"
                                  :mode="'multiple'"
                                  :getPopupContainer="(node) => node.parentNode"
                                  :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.taskParticipantArray"
                                  :showArrow="true"
                                  :placeholder="'请选择'"
                                  :selected="vid_727os2vxmi_props.selected"
                                  :options="vid_727os2vxmi_options()"
                                  @change="handle_vid_727os2vxmi_change"
                                >
                                </a-select>
                                <!-- end vid_727os2vxmi 任务参与人_taskParticipant -->
                                <template #label>
                                  <!-- begin vid_rau10irdug 简单文本_6xv2abgrxc -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_rau10irdug"> 任务参与人 </span>
                                  <!-- end vid_rau10irdug 简单文本_6xv2abgrxc -->
                                </template>
                              </a-form-item>
                              <!-- end vid_12vx7j7xh6 表单项容器_cgm5o9iptr -->
                            </a-col>
                          </a-row>
                          <!-- end vid_scuvls30dj 布局容器_3dso6s8gez -->
                          <!-- begin vid_uhkzjaisal 布局容器_mgdahu6ezj -->
                          <a-row :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_uhkzjaisal" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_s6uaj61mey 表单项容器_d88u3ukbq4 -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`startTime`)"
                                :rules="a_3lhu5f974z_rules[`startTime`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_s6uaj61mey"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_sx8k6cpo4v 任务开始时间_startTime -->
                                <a-date-picker
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_sx8k6cpo4v"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.startTime"
                                  :valueFormat="'YYYY-MM-DD'"
                                  :placeholder="'请选择'"
                                  :showTime="vid_sx8k6cpo4v_props.showTime"
                                >
                                </a-date-picker>
                                <!-- end vid_sx8k6cpo4v 任务开始时间_startTime -->
                                <template #label>
                                  <!-- begin vid_jhvrstscp6 简单文本_kz34ojnjsb -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_jhvrstscp6"> 任务开始时间 </span>
                                  <!-- end vid_jhvrstscp6 简单文本_kz34ojnjsb -->
                                </template>
                              </a-form-item>
                              <!-- end vid_s6uaj61mey 表单项容器_d88u3ukbq4 -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_6f3cl6h6d4 表单项容器_lcn3zknbvn -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`endTime`)"
                                :rules="a_3lhu5f974z_rules[`endTime`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_6f3cl6h6d4"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_0xb6ud68fm 任务结束时间 -->
                                <a-date-picker
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_0xb6ud68fm"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.endTime"
                                  :valueFormat="'YYYY-MM-DD'"
                                  :placeholder="'请选择'"
                                  :showTime="vid_0xb6ud68fm_props.showTime"
                                >
                                </a-date-picker>
                                <!-- end vid_0xb6ud68fm 任务结束时间 -->
                                <template #label>
                                  <!-- begin vid_ccc287ll84 简单文本_ab2ps8smv5 -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_ccc287ll84"> 任务结束时间 </span>
                                  <!-- end vid_ccc287ll84 简单文本_ab2ps8smv5 -->
                                </template>
                              </a-form-item>
                              <!-- end vid_6f3cl6h6d4 表单项容器_lcn3zknbvn -->
                            </a-col>
                          </a-row>
                          <!-- end vid_uhkzjaisal 布局容器_mgdahu6ezj -->
                          <!-- begin vid_3lmpfkqdr6 布局容器_tecdakqtmi -->
                          <a-row :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_3lmpfkqdr6" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_b48tiyy6ef 表单项容器_fayb43gkz6 -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`taskBudget`)"
                                :rules="a_3lhu5f974z_rules[`taskBudget`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_b48tiyy6ef"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_mz34hgwmdn 任务预算_taskBudget -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_mz34hgwmdn"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.taskBudget"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_mz34hgwmdn 任务预算_taskBudget -->
                                <template #label>
                                  <!-- begin vid_xzf7dt0758 任务预算(万) -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_xzf7dt0758"> 任务预算(万) </span>
                                  <!-- end vid_xzf7dt0758 任务预算(万) -->
                                </template>
                              </a-form-item>
                              <!-- end vid_b48tiyy6ef 表单项容器_fayb43gkz6 -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_w77b905hfs 表单项容器_b7ads4x9gf -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`workingHours`)"
                                :rules="a_3lhu5f974z_rules[`workingHours`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_w77b905hfs"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_16jeh6qdek 预计投入工时_workingHours -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_16jeh6qdek"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.workingHours"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_16jeh6qdek 预计投入工时_workingHours -->
                                <template #label>
                                  <!-- begin vid_w6i6qo45z0 预计投入工时(h) -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_w6i6qo45z0"> 预计投入工时(h) </span>
                                  <!-- end vid_w6i6qo45z0 预计投入工时(h) -->
                                </template>
                              </a-form-item>
                              <!-- end vid_w77b905hfs 表单项容器_b7ads4x9gf -->
                            </a-col>
                          </a-row>
                          <!-- end vid_3lmpfkqdr6 布局容器_tecdakqtmi -->
                          <!-- begin vid_59pu2k73os 布局容器_e79auuy7ad -->
                          <a-row :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_59pu2k73os" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_nis2054f9c 表单项容器_riu72ii0hs -->
                              <a-form-item
                                :name="setSubFormName(vid_10nqlbbc7q_dataItem,`taskStatus`)"
                                :rules="a_3lhu5f974z_rules[`taskStatus`]"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                class="vid_nis2054f9c"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_aws7k3cemp 下拉框_ljcpu2x8re -->
                                <a-select
                                  :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                  class="vid_aws7k3cemp"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_10nqlbbc7q_dataItem.dataItem.taskStatus"
                                  :showArrow="true"
                                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                  :dropdownMatchSelectWidth="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :allowClear="true"
                                  :searchValue="vid_aws7k3cemp_props.searchValue"
                                  :selected="vid_aws7k3cemp_props.selected"
                                  :options="vid_aws7k3cemp_options()"
                                  @change="handle_vid_aws7k3cemp_change"
                                  @search="handle_vid_aws7k3cemp_search"
                                >
                                </a-select>
                                <!-- end vid_aws7k3cemp 下拉框_ljcpu2x8re -->
                                <template #label>
                                  <!-- begin vid_cy368napkq 任务状态 -->
                                  <span :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_cy368napkq"> 任务状态 </span>
                                  <!-- end vid_cy368napkq 任务状态 -->
                                </template>
                              </a-form-item>
                              <!-- end vid_nis2054f9c 表单项容器_riu72ii0hs -->
                            </a-col>
                            <a-col :span="12"> </a-col>
                          </a-row>
                          <!-- end vid_59pu2k73os 布局容器_e79auuy7ad -->
                          <!-- begin vid_do4qk29peu 布局容器_bs9zzz5zrb -->
                          <a-row :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex" class="vid_do4qk29peu" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_fohzbc2627 输入框_rm4f8bgtpp -->
                              <a-input
                                autocomplete="off"
                                :data-cycle-index="vid_10nqlbbc7q_dataItem.cycleIndex"
                                v-if="false"
                                class="vid_fohzbc2627"
                                v-model:value="vid_10nqlbbc7q_dataItem.dataItem.taskId"
                              >
                              </a-input>
                              <!-- end vid_fohzbc2627 输入框_rm4f8bgtpp -->
                            </a-col>
                            <a-col :span="12"> </a-col>
                          </a-row>
                          <!-- end vid_do4qk29peu 布局容器_bs9zzz5zrb -->
                        </template>
                      </al-action-list>
                      <!-- end vid_10nqlbbc7q 编辑动作列表 -->
                    </a-form-item>
                    <!-- end vid_3wfw4huqrs 表单项容器_pofxniwdkw -->
                  </a-col>
                </a-row>
                <!-- end vid_yjblciotaj 布局容器_kbby35s9rw -->
              </a-col>
            </a-row>
            <!-- end vid_gguxbzg5lk 布局容器_fvsnwlboss -->
          </al-box>
          <!-- end vid_cztbzs6qac 容器_trbxkapwv6 -->
        </a-form>
        <!-- end vid_ptqzr22zsl 表单容器_1hboi5y5pn -->
      </a-modal>
      <!-- end vid_ujuoy3urqm 编辑里程碑 -->
      <!-- begin vid_74nuuvmbbh 新增里程碑 -->
      <a-modal
        class="vid_74nuuvmbbh"
        v-model:visible="vid_74nuuvmbbh_props.visible"
        :centered="true"
        :title="'新增里程碑'"
        :maskClosable="false"
        :width="900"
        :okText="'保存'"
        @ok="handle_vid_74nuuvmbbh_ok"
      >
        <!-- begin vid_2s3pd49wqk 新建里程碑表单容器 -->
        <a-form ref="vid_2s3pd49wqk_ref" class="vid_2s3pd49wqk" :model="v_30blfqiwu1" :formModel="vid_2s3pd49wqk_props.formModel">
          <!-- begin vid_zcs0tbo049 布局容器_8e63gbprlt -->
          <a-row class="vid_zcs0tbo049" :slots="'24'">
            <a-col :span="24">
              <!-- begin vid_irr1b95h6c 容器_p6mts6a44u -->
              <al-box class="vid_irr1b95h6c">
                <!-- begin vid_2blz3r4b1a 布局容器_m73c56j3m1 -->
                <a-row class="vid_2blz3r4b1a" :slots="'11:11:11:11:12:24'">
                  <a-col :span="11">
                    <!-- begin vid_n5k2dnk3lh 表单项容器_x0sn9hbu2h -->
                    <a-form-item name="j_mi90y3a50l" :rules="v_30blfqiwu1_rules[`j_mi90y3a50l`]" class="vid_n5k2dnk3lh" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                      <!-- begin vid_qvb0z2tr72 项目阶段_projectPhaseId -->
                      <a-select
                        class="vid_qvb0z2tr72"
                        :getPopupContainer="(node) => node.parentNode"
                        v-model:value="v_30blfqiwu1.j_mi90y3a50l"
                        :showArrow="true"
                        :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                        :dropdownMatchSelectWidth="true"
                        :showSearch="true"
                        :placeholder="'请选择'"
                        :allowClear="true"
                        :searchValue="vid_qvb0z2tr72_props.searchValue"
                        :selected="vid_qvb0z2tr72_props.selected"
                        :options="vid_qvb0z2tr72_options()"
                        @change="handle_vid_qvb0z2tr72_change"
                        @search="handle_vid_qvb0z2tr72_search"
                      >
                      </a-select>
                      <!-- end vid_qvb0z2tr72 项目阶段_projectPhaseId -->
                      <template #label>
                        <!-- begin vid_begdh7fsbn 简单文本_xh43mz1h7p -->
                        <span class="vid_begdh7fsbn"> 关联项目阶段 </span>
                        <!-- end vid_begdh7fsbn 简单文本_xh43mz1h7p -->
                      </template>
                    </a-form-item>
                    <!-- end vid_n5k2dnk3lh 表单项容器_x0sn9hbu2h -->
                  </a-col>
                  <a-col :span="11">
                    <!-- begin vid_jt10cec706 表单项容器_6cnomld3j1 -->
                    <a-form-item name="r_6wrm1hwvjl" :rules="v_30blfqiwu1_rules[`r_6wrm1hwvjl`]" class="vid_jt10cec706" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                      <!-- begin vid_q7zaft0bac 里程碑名称_milepostName -->
                      <a-input autocomplete="off" class="vid_q7zaft0bac" v-model:value="v_30blfqiwu1.r_6wrm1hwvjl" :placeholder="'请输入'"> </a-input>
                      <!-- end vid_q7zaft0bac 里程碑名称_milepostName -->
                      <template #label>
                        <!-- begin vid_oheb142axo 简单文本_jjt09j2vcs -->
                        <span class="vid_oheb142axo"> 里程碑名称 </span>
                        <!-- end vid_oheb142axo 简单文本_jjt09j2vcs -->
                      </template>
                    </a-form-item>
                    <!-- end vid_jt10cec706 表单项容器_6cnomld3j1 -->
                  </a-col>
                  <a-col :span="11">
                    <!-- begin vid_jdxcsb2ehq 表单项容器_q22ykl30l4 -->
                    <a-form-item name="v_4nyyn0t5jv" :rules="v_30blfqiwu1_rules[`v_4nyyn0t5jv`]" class="vid_jdxcsb2ehq" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                      <!-- begin vid_jmvm1teiu3 输入框_7gudlhoj5n -->
                      <a-input autocomplete="off" class="vid_jmvm1teiu3" v-model:value="v_30blfqiwu1.v_4nyyn0t5jv" :placeholder="'请输入'"> </a-input>
                      <!-- end vid_jmvm1teiu3 输入框_7gudlhoj5n -->
                      <template #label>
                        <!-- begin vid_x93uhk7i6e 里程碑预算 -->
                        <span class="vid_x93uhk7i6e"> 里程碑预算 </span>
                        <!-- end vid_x93uhk7i6e 里程碑预算 -->
                      </template>
                    </a-form-item>
                    <!-- end vid_jdxcsb2ehq 表单项容器_q22ykl30l4 -->
                  </a-col>
                  <a-col :span="11"> </a-col>
                  <a-col :span="12">
                    <!-- begin vid_7sxps69gsj 简单文本_xr8fbokfw4 -->
                    <span class="vid_7sxps69gsj"> 任务编辑 </span>
                    <!-- end vid_7sxps69gsj 简单文本_xr8fbokfw4 -->
                  </a-col>
                  <a-col :span="24">
                    <!-- begin vid_zekjlktjnz 表单项容器_uvug2yy265 -->
                    <a-form-item name="r_7p98nd8hab" :rules="v_30blfqiwu1_rules[`r_7p98nd8hab`]" class="vid_zekjlktjnz" :label-col='{"span":24}' :wrapper-col='{"span":24}'>
                      <!-- begin vid_y072heuac7 新建里程碑动作列表 -->
                      <al-action-list
                        data-field-key="r_7p98nd8hab"
                        ref="vid_y072heuac7_ref"
                        class="vid_y072heuac7"
                        v-model:dataSource="v_30blfqiwu1.r_7p98nd8hab"
                        v-model:extendDataSource="vid_y072heuac7_props.dataSource"
                        v-model:current="vid_y072heuac7_props.current"
                        v-model:currentIndex="vid_y072heuac7_props.currentIndex"
                        :deleteLineHeight="60"
                      >
                        <template #default="vid_y072heuac7_dataItem">
                          <!-- begin vid_ezclclx1pz 布局容器_0wmekzqp3h -->
                          <a-row :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_ezclclx1pz" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_iirsv4rvqk 表单项容器_y22ourn5u5 -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`taskName`)"
                                :rules="v_30blfqiwu1_rules[`taskName`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_iirsv4rvqk"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_9mdtz82ehs 任务名称_taskName -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_9mdtz82ehs"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.taskName"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_9mdtz82ehs 任务名称_taskName -->
                                <template #label>
                                  <!-- begin vid_mgllic3lz3 简单文本_lvsis140kt -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_mgllic3lz3"> 任务名称 </span>
                                  <!-- end vid_mgllic3lz3 简单文本_lvsis140kt -->
                                </template>
                              </a-form-item>
                              <!-- end vid_iirsv4rvqk 表单项容器_y22ourn5u5 -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_xiuk7tdvi1 表单项容器_6k7j9u38zg -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`taskDependencyArray`)"
                                :rules="v_30blfqiwu1_rules[`taskDependencyArray`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_xiuk7tdvi1"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_zcxsmd50is 新建任务依赖_taskDependencyArray -->
                                <a-select
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_zcxsmd50is"
                                  :mode="'multiple'"
                                  :getPopupContainer="(node) => node.parentNode"
                                  :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.taskDependencyArray"
                                  :showArrow="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :selected="vid_zcxsmd50is_props.selected"
                                  :options="vid_zcxsmd50is_options()"
                                  @focus="handle_vid_zcxsmd50is_focus"
                                  @change="handle_vid_zcxsmd50is_change"
                                >
                                </a-select>
                                <!-- end vid_zcxsmd50is 新建任务依赖_taskDependencyArray -->
                                <template #label>
                                  <!-- begin vid_2jlwta31te 简单文本_qyogkz0n0k -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_2jlwta31te"> 依赖任务 </span>
                                  <!-- end vid_2jlwta31te 简单文本_qyogkz0n0k -->
                                </template>
                              </a-form-item>
                              <!-- end vid_xiuk7tdvi1 表单项容器_6k7j9u38zg -->
                            </a-col>
                          </a-row>
                          <!-- end vid_ezclclx1pz 布局容器_0wmekzqp3h -->
                          <!-- begin vid_mes5jgi9wv 布局容器_r9x4e0ctmh -->
                          <a-row :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_mes5jgi9wv" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_n4m1p0myrn 表单项容器_iyix9wgo19 -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`taskOwner`)"
                                :rules="v_30blfqiwu1_rules[`taskOwner`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_n4m1p0myrn"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_wpwf9x791a 任务负责人_taskOwner -->
                                <a-select
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_wpwf9x791a"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.taskOwner"
                                  :showArrow="true"
                                  :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                                  :dropdownMatchSelectWidth="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :allowClear="true"
                                  :searchValue="vid_wpwf9x791a_props.searchValue"
                                  :selected="vid_wpwf9x791a_props.selected"
                                  :options="vid_wpwf9x791a_options()"
                                  @change="handle_vid_wpwf9x791a_change"
                                  @search="handle_vid_wpwf9x791a_search"
                                >
                                </a-select>
                                <!-- end vid_wpwf9x791a 任务负责人_taskOwner -->
                                <template #label>
                                  <!-- begin vid_yyxcm2op0r 简单文本_pptl9jmcjs -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_yyxcm2op0r"> 任务负责人 </span>
                                  <!-- end vid_yyxcm2op0r 简单文本_pptl9jmcjs -->
                                </template>
                              </a-form-item>
                              <!-- end vid_n4m1p0myrn 表单项容器_iyix9wgo19 -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_fl7asx6gxk 表单项容器_2701n8gytz -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`taskParticipantArray`)"
                                :rules="v_30blfqiwu1_rules[`taskParticipantArray`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_fl7asx6gxk"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_ec0kwncf8s 任务参与人_taskParticipant -->
                                <a-select
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_ec0kwncf8s"
                                  :mode="'multiple'"
                                  :getPopupContainer="(node) => node.parentNode"
                                  :filterOption="(input, option) => {
    return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
  }"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.taskParticipantArray"
                                  :showArrow="true"
                                  :showSearch="true"
                                  :placeholder="'请选择'"
                                  :selected="vid_ec0kwncf8s_props.selected"
                                  :options="vid_ec0kwncf8s_options()"
                                  @change="handle_vid_ec0kwncf8s_change"
                                >
                                </a-select>
                                <!-- end vid_ec0kwncf8s 任务参与人_taskParticipant -->
                                <template #label>
                                  <!-- begin vid_s8ysqb1q95 简单文本_vf94rxvqsj -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_s8ysqb1q95"> 任务参与人 </span>
                                  <!-- end vid_s8ysqb1q95 简单文本_vf94rxvqsj -->
                                </template>
                              </a-form-item>
                              <!-- end vid_fl7asx6gxk 表单项容器_2701n8gytz -->
                            </a-col>
                          </a-row>
                          <!-- end vid_mes5jgi9wv 布局容器_r9x4e0ctmh -->
                          <!-- begin vid_gnlqirw6um 布局容器_rqa4k94oub -->
                          <a-row :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_gnlqirw6um" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_vn418purbl 表单项容器_0otfzrw39k -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`startTime`)"
                                :rules="v_30blfqiwu1_rules[`startTime`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_vn418purbl"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_zi10to2e7d 任务开始时间_startTime -->
                                <a-date-picker
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_zi10to2e7d"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.startTime"
                                  :valueFormat="'YYYY-MM-DD'"
                                  :placeholder="'请选择'"
                                  :showTime="vid_zi10to2e7d_props.showTime"
                                >
                                </a-date-picker>
                                <!-- end vid_zi10to2e7d 任务开始时间_startTime -->
                                <template #label>
                                  <!-- begin vid_2gi9wv3gi6 简单文本_r0b5bpjvi6 -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_2gi9wv3gi6"> 任务开始时间 </span>
                                  <!-- end vid_2gi9wv3gi6 简单文本_r0b5bpjvi6 -->
                                </template>
                              </a-form-item>
                              <!-- end vid_vn418purbl 表单项容器_0otfzrw39k -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_vt7h9p6z4x 表单项容器_vtbq9krume -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`endTime`)"
                                :rules="v_30blfqiwu1_rules[`endTime`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_vt7h9p6z4x"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_nq30nmdljj 任务结束时间 -->
                                <a-date-picker
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_nq30nmdljj"
                                  :getPopupContainer="(node) => node.parentNode"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.endTime"
                                  :valueFormat="'YYYY-MM-DD'"
                                  :placeholder="'请选择'"
                                  :showTime="vid_nq30nmdljj_props.showTime"
                                >
                                </a-date-picker>
                                <!-- end vid_nq30nmdljj 任务结束时间 -->
                                <template #label>
                                  <!-- begin vid_zpz6t386ey 简单文本_ir2omadc3d -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_zpz6t386ey"> 任务结束时间 </span>
                                  <!-- end vid_zpz6t386ey 简单文本_ir2omadc3d -->
                                </template>
                              </a-form-item>
                              <!-- end vid_vt7h9p6z4x 表单项容器_vtbq9krume -->
                            </a-col>
                          </a-row>
                          <!-- end vid_gnlqirw6um 布局容器_rqa4k94oub -->
                          <!-- begin vid_52ux1hwasf 布局容器_1eiy8ef4ts -->
                          <a-row :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_52ux1hwasf" :slots="'12:12'">
                            <a-col :span="12">
                              <!-- begin vid_7om5a7nwqh 表单项容器_dvoo6dsmjt -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`taskBudget`)"
                                :rules="v_30blfqiwu1_rules[`taskBudget`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_7om5a7nwqh"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_wlfkx3ma4p 任务预算_taskBudget -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_wlfkx3ma4p"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.taskBudget"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_wlfkx3ma4p 任务预算_taskBudget -->
                                <template #label>
                                  <!-- begin vid_wuuyxh4e33 任务预算(万) -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_wuuyxh4e33"> 任务预算(万) </span>
                                  <!-- end vid_wuuyxh4e33 任务预算(万) -->
                                </template>
                              </a-form-item>
                              <!-- end vid_7om5a7nwqh 表单项容器_dvoo6dsmjt -->
                            </a-col>
                            <a-col :span="12">
                              <!-- begin vid_545rpor9k4 表单项容器_yql3uzw4lx -->
                              <a-form-item
                                :name="setSubFormName(vid_y072heuac7_dataItem,`workingHours`)"
                                :rules="v_30blfqiwu1_rules[`workingHours`]"
                                :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                class="vid_545rpor9k4"
                                :label-col='{"span":8}'
                                :wrapper-col='{"span":16}'
                              >
                                <!-- begin vid_3eofdh9j7t 预计投入工时_workingHours -->
                                <a-input
                                  autocomplete="off"
                                  :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex"
                                  class="vid_3eofdh9j7t"
                                  v-model:value="vid_y072heuac7_dataItem.dataItem.workingHours"
                                  :placeholder="'请输入'"
                                >
                                </a-input>
                                <!-- end vid_3eofdh9j7t 预计投入工时_workingHours -->
                                <template #label>
                                  <!-- begin vid_p6v1ekgtk9 预计投入工时(h) -->
                                  <span :data-cycle-index="vid_y072heuac7_dataItem.cycleIndex" class="vid_p6v1ekgtk9"> 预计投入工时(h) </span>
                                  <!-- end vid_p6v1ekgtk9 预计投入工时(h) -->
                                </template>
                              </a-form-item>
                              <!-- end vid_545rpor9k4 表单项容器_yql3uzw4lx -->
                            </a-col>
                          </a-row>
                          <!-- end vid_52ux1hwasf 布局容器_1eiy8ef4ts -->
                        </template>
                      </al-action-list>
                      <!-- end vid_y072heuac7 新建里程碑动作列表 -->
                    </a-form-item>
                    <!-- end vid_zekjlktjnz 表单项容器_uvug2yy265 -->
                  </a-col>
                </a-row>
                <!-- end vid_2blz3r4b1a 布局容器_m73c56j3m1 -->
              </al-box>
              <!-- end vid_irr1b95h6c 容器_p6mts6a44u -->
            </a-col>
          </a-row>
          <!-- end vid_zcs0tbo049 布局容器_8e63gbprlt -->
        </a-form>
        <!-- end vid_2s3pd49wqk 新建里程碑表单容器 -->
      </a-modal>
      <!-- end vid_74nuuvmbbh 新增里程碑 -->
      <!-- begin vid_7l57iwltcr 布局容器_chwoxkr4g5 -->
      <a-row class="vid_7l57iwltcr" :gutter="16" :slots="'4:20'">
        <a-col :span="4">
          <!-- begin vid_qbnekcpmkl 容器_jmv5givuzm -->
          <al-box class="vid_qbnekcpmkl">
            <!-- begin vid_uior7kmmpk 布局容器_rmdroek72c -->
            <a-row class="vid_uior7kmmpk" :slots="'18:6'">
              <a-col :span="18">
                <!-- begin vid_opz1fvfk0o 简单文本_107yv5yaku -->
                <span class="vid_opz1fvfk0o"> 目录名称 </span>
                <!-- end vid_opz1fvfk0o 简单文本_107yv5yaku -->
              </a-col>
              <a-col :span="6">
                <!-- begin vid_5rxlkyf5s2 容器_8myn8qtovn -->
                <al-box class="vid_5rxlkyf5s2">
                  <!-- begin vid_yssa4zftwp 按钮_pwicsck10p -->
                  <a-button class="vid_yssa4zftwp" @click="handle_vid_yssa4zftwp_click">
                    <template #icon><plus-outlined /></template>

                    新增
                  </a-button>
                  <!-- end vid_yssa4zftwp 按钮_pwicsck10p -->
                </al-box>
                <!-- end vid_5rxlkyf5s2 容器_8myn8qtovn -->
              </a-col>
            </a-row>
            <!-- end vid_uior7kmmpk 布局容器_rmdroek72c -->
            <!-- begin vid_blxi5mtpep 容器_c9sff02qmi -->
            <al-box class="vid_blxi5mtpep">
              <!-- begin vid_ucdhgbwfk3 输入框_78y46o1xc5 -->
              <a-input autocomplete="off" class="vid_ucdhgbwfk3" v-model:value="vid_ucdhgbwfk3_props.value" :placeholder="'请输入关键词查询'" :allowClear="true" @change="handle_vid_ucdhgbwfk3_change">
                <template #suffix
                  ><span role="img" class="anticon"
                    ><embed
                      style="width: 1em;height:1em;"
                      src="" /></span
                ></template>
              </a-input>
              <!-- end vid_ucdhgbwfk3 输入框_78y46o1xc5 -->
            </al-box>
            <!-- end vid_blxi5mtpep 容器_c9sff02qmi -->
            <!-- begin vid_wzwralami7 容器_caugvs4jsu -->
            <al-box class="vid_wzwralami7">
              <!-- begin vid_rzym3dfyuw 项目树形控件 -->
              <al-tree-extend
                class="vid_rzym3dfyuw"
                v-model:checkedKeys="vid_rzym3dfyuw_props.checkedKeys"
                v-model:selectedKeys="vid_rzym3dfyuw_props.selectedKeys"
                v-model:expandedKeys="vid_rzym3dfyuw_props.expandedKeys"
                :fieldNames="{'children':'children','title':'projectName','key':'projectId'}"
                :selectedBackgroundColor="'#EBF1FF'"
                :backgroundColor="'#F5F5F5'"
                :lazyParams="vid_rzym3dfyuw_props.lazyParams"
                :clickNode="vid_rzym3dfyuw_props.clickNode"
                :selected="vid_rzym3dfyuw_props.selected"
                :treeData="vid_rzym3dfyuw_options()"
                @select="handle_vid_rzym3dfyuw_select"
                :style="vid_rzym3dfyuw_style"
              >
              </al-tree-extend>
              <!-- end vid_rzym3dfyuw 项目树形控件 -->
            </al-box>
            <!-- end vid_wzwralami7 容器_caugvs4jsu -->
          </al-box>
          <!-- end vid_qbnekcpmkl 容器_jmv5givuzm -->
        </a-col>
        <a-col :span="20">
          <!-- begin vid_6dwl9cu0n6 容器_6ngvilq9es -->
          <al-box class="vid_6dwl9cu0n6">
            <!-- begin vid_7s8tryyzoc 布局容器_elffdebfoy -->
            <a-row class="vid_7s8tryyzoc" :slots="'12:12'">
              <a-col :span="12">
                <!-- begin vid_odo4vs0u4v 容器_pez9rsa909 -->
                <al-box class="vid_odo4vs0u4v">
                  <!-- begin vid_xt1syxurgf 项目信息 -->
                  <span class="vid_xt1syxurgf"> 项目信息 </span>
                  <!-- end vid_xt1syxurgf 项目信息 -->
                </al-box>
                <!-- end vid_odo4vs0u4v 容器_pez9rsa909 -->
              </a-col>
              <a-col :span="12">
                <!-- begin vid_5bq6mz9u45 容器_a5xbeqndep -->
                <al-box class="vid_5bq6mz9u45">
                  <!-- begin vid_i2ht4ljq1t 隐藏项目信息 -->
                  <a-button v-if="showState.vid_i2ht4ljq1t_visible" class="vid_i2ht4ljq1t" @click="handle_vid_i2ht4ljq1t_click">
                    <template #icon><shrink-outlined /></template>
                  </a-button>
                  <!-- end vid_i2ht4ljq1t 隐藏项目信息 -->
                  <!-- begin vid_chp28ng6fc 显示项目信息 -->
                  <a-button v-if="showState.vid_chp28ng6fc_visible" class="vid_chp28ng6fc" @click="handle_vid_chp28ng6fc_click">
                    <template #icon><arrows-alt-outlined /></template>
                  </a-button>
                  <!-- end vid_chp28ng6fc 显示项目信息 -->
                  <!-- begin vid_pljcwbceg8 删除 -->
                  <a-button class="vid_pljcwbceg8" @click="handle_vid_pljcwbceg8_click">
                    <template #icon><delete-outlined /></template>

                    删除
                  </a-button>
                  <!-- end vid_pljcwbceg8 删除 -->
                  <!-- begin vid_9stxwa9aho 编辑 -->
                  <a-button class="vid_9stxwa9aho" style="background: none" :type="'primary'" @click="handle_vid_9stxwa9aho_click">
                    <template #icon><edit-outlined /></template>

                    编辑
                  </a-button>
                  <!-- end vid_9stxwa9aho 编辑 -->
                </al-box>
                <!-- end vid_5bq6mz9u45 容器_a5xbeqndep -->
              </a-col>
            </a-row>
            <!-- end vid_7s8tryyzoc 布局容器_elffdebfoy -->
            <!-- begin vid_9351xbiw30 表单项容器_wm2xbf0s7b -->
            <a-form-item name="u_ut3dvsp6yl" v-if="showState.vid_9351xbiw30_visible" class="vid_9351xbiw30" :label-col='{"span":24}' :wrapper-col='{"span":24}'>
              <!-- begin vid_1o6x5h66j0 项目详情表单容器 -->
              <a-form class="vid_1o6x5h66j0" :model="q_lcu9awji3l" :formModel="vid_1o6x5h66j0_props.formModel">
                <!-- begin vid_n40jlnry35 布局容器_kn5fc1io0u -->
                <a-row class="vid_n40jlnry35" :slots="'3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:5:3:13'">
                  <a-col :span="3">
                    <!-- begin vid_iu2mbi0cok 容器_6jemyp2vdb -->
                    <al-box class="vid_iu2mbi0cok">
                      <!-- begin vid_6a779uw2qq 项目名称 -->
                      <span class="vid_6a779uw2qq"> 项目名称 </span>
                      <!-- end vid_6a779uw2qq 项目名称 -->
                    </al-box>
                    <!-- end vid_iu2mbi0cok 容器_6jemyp2vdb -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_3nmlin0504 容器_4g8tyuvt4l -->
                    <al-box class="vid_3nmlin0504">
                      <!-- begin vid_9m6jfd6fc1 项目名称 -->
                      <span class="vid_9m6jfd6fc1">
                        {{ renderStringInTemplate(vid_9m6jfd6fc1_props.rt_text) }}
                      </span>
                      <!-- end vid_9m6jfd6fc1 项目名称 -->
                    </al-box>
                    <!-- end vid_3nmlin0504 容器_4g8tyuvt4l -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_h2zfzaz75s 容器_bv9r6vcwy3 -->
                    <al-box class="vid_h2zfzaz75s">
                      <!-- begin vid_mhnm8f7yh0 售前编码 -->
                      <span class="vid_mhnm8f7yh0"> 售前编码 </span>
                      <!-- end vid_mhnm8f7yh0 售前编码 -->
                    </al-box>
                    <!-- end vid_h2zfzaz75s 容器_bv9r6vcwy3 -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_vw7p6j10s8 容器_dhluaq1l73 -->
                    <al-box class="vid_vw7p6j10s8">
                      <!-- begin vid_9o1tjwfo9e 售前编码 -->
                      <span class="vid_9o1tjwfo9e">
                        {{ renderStringInTemplate(vid_9o1tjwfo9e_props.rt_text) }}
                      </span>
                      <!-- end vid_9o1tjwfo9e 售前编码 -->
                    </al-box>
                    <!-- end vid_vw7p6j10s8 容器_dhluaq1l73 -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_l6f80lgfc0 容器_an1bv2d19c -->
                    <al-box class="vid_l6f80lgfc0">
                      <!-- begin vid_3t63utv5zt 项目代号 -->
                      <span class="vid_3t63utv5zt"> 项目代号 </span>
                      <!-- end vid_3t63utv5zt 项目代号 -->
                    </al-box>
                    <!-- end vid_l6f80lgfc0 容器_an1bv2d19c -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_ehfxecvdj8 容器_vklwasxdu3 -->
                    <al-box class="vid_ehfxecvdj8">
                      <!-- begin vid_sc3fyx5qzu 项目代号 -->
                      <span class="vid_sc3fyx5qzu">
                        {{ renderStringInTemplate(vid_sc3fyx5qzu_props.rt_text) }}
                      </span>
                      <!-- end vid_sc3fyx5qzu 项目代号 -->
                    </al-box>
                    <!-- end vid_ehfxecvdj8 容器_vklwasxdu3 -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_q740vgdj6d 容器_o6zina9txg -->
                    <al-box class="vid_q740vgdj6d">
                      <!-- begin vid_qjhx10tm08 项目类型 -->
                      <span class="vid_qjhx10tm08"> 项目类型 </span>
                      <!-- end vid_qjhx10tm08 项目类型 -->
                    </al-box>
                    <!-- end vid_q740vgdj6d 容器_o6zina9txg -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_rzrp8snlry 容器_n9d7a1qeih -->
                    <al-box class="vid_rzrp8snlry">
                      <!-- begin vid_ntnyvkkrrf 项目类型 -->
                      <span class="vid_ntnyvkkrrf">
                        {{ renderStringInTemplate(vid_ntnyvkkrrf_props.rt_text) }}
                      </span>
                      <!-- end vid_ntnyvkkrrf 项目类型 -->
                    </al-box>
                    <!-- end vid_rzrp8snlry 容器_n9d7a1qeih -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_tc9o39fw9g 容器_q2e8bj5atu -->
                    <al-box class="vid_tc9o39fw9g">
                      <!-- begin vid_0659nxtb6k 项目编码 -->
                      <span class="vid_0659nxtb6k"> 项目编码 </span>
                      <!-- end vid_0659nxtb6k 项目编码 -->
                    </al-box>
                    <!-- end vid_tc9o39fw9g 容器_q2e8bj5atu -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_hs270xpe2e 容器_7w55oujazx -->
                    <al-box class="vid_hs270xpe2e">
                      <!-- begin vid_0u6kt0pqgq 项目编码 -->
                      <span class="vid_0u6kt0pqgq">
                        {{ renderStringInTemplate(vid_0u6kt0pqgq_props.rt_text) }}
                      </span>
                      <!-- end vid_0u6kt0pqgq 项目编码 -->
                    </al-box>
                    <!-- end vid_hs270xpe2e 容器_7w55oujazx -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_sm9wacp2g0 容器_vfaipi4p8h -->
                    <al-box class="vid_sm9wacp2g0">
                      <!-- begin vid_o0q7cydece 项目交付编码 -->
                      <span class="vid_o0q7cydece"> 项目交付编码 </span>
                      <!-- end vid_o0q7cydece 项目交付编码 -->
                    </al-box>
                    <!-- end vid_sm9wacp2g0 容器_vfaipi4p8h -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_1616d5jzce 容器_4pwgcetiws -->
                    <al-box class="vid_1616d5jzce">
                      <!-- begin vid_eijpgq36zy 售前交付编码 -->
                      <span class="vid_eijpgq36zy">
                        {{ renderStringInTemplate(vid_eijpgq36zy_props.rt_text) }}
                      </span>
                      <!-- end vid_eijpgq36zy 售前交付编码 -->
                    </al-box>
                    <!-- end vid_1616d5jzce 容器_4pwgcetiws -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_xvc0yzi4tp 容器_x359vhobcp -->
                    <al-box class="vid_xvc0yzi4tp">
                      <!-- begin vid_q0o2y1xjmq 项目开始时间 -->
                      <span class="vid_q0o2y1xjmq"> 项目开始时间 </span>
                      <!-- end vid_q0o2y1xjmq 项目开始时间 -->
                    </al-box>
                    <!-- end vid_xvc0yzi4tp 容器_x359vhobcp -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_n93rd0633v 容器_aymoz3djdd -->
                    <al-box class="vid_n93rd0633v">
                      <!-- begin vid_1xsrpamsgz 项目开始时间 -->
                      <span class="vid_1xsrpamsgz">
                        {{ renderStringInTemplate(vid_1xsrpamsgz_props.rt_text) }}
                      </span>
                      <!-- end vid_1xsrpamsgz 项目开始时间 -->
                    </al-box>
                    <!-- end vid_n93rd0633v 容器_aymoz3djdd -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_g82jyamcz8 容器_jfgwyblzfv -->
                    <al-box class="vid_g82jyamcz8">
                      <!-- begin vid_52233otyt0 项目上线时间 -->
                      <span class="vid_52233otyt0"> 项目上线时间 </span>
                      <!-- end vid_52233otyt0 项目上线时间 -->
                    </al-box>
                    <!-- end vid_g82jyamcz8 容器_jfgwyblzfv -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_n5peq35iuj 容器_39fstz0ldf -->
                    <al-box class="vid_n5peq35iuj">
                      <!-- begin vid_dwanramzuy 项目上线时间 -->
                      <span class="vid_dwanramzuy">
                        {{ renderStringInTemplate(vid_dwanramzuy_props.rt_text) }}
                      </span>
                      <!-- end vid_dwanramzuy 项目上线时间 -->
                    </al-box>
                    <!-- end vid_n5peq35iuj 容器_39fstz0ldf -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_6x7tk90404 容器_eeb44n41jb -->
                    <al-box class="vid_6x7tk90404">
                      <!-- begin vid_bmnqyezbfq 项目验收时间 -->
                      <span class="vid_bmnqyezbfq"> 项目验收时间 </span>
                      <!-- end vid_bmnqyezbfq 项目验收时间 -->
                    </al-box>
                    <!-- end vid_6x7tk90404 容器_eeb44n41jb -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_drbshftbfk 容器_iboq0h223s -->
                    <al-box class="vid_drbshftbfk">
                      <!-- begin vid_x7g6b1e0w2 项目验收时间 -->
                      <span class="vid_x7g6b1e0w2">
                        {{ renderStringInTemplate(vid_x7g6b1e0w2_props.rt_text) }}
                      </span>
                      <!-- end vid_x7g6b1e0w2 项目验收时间 -->
                    </al-box>
                    <!-- end vid_drbshftbfk 容器_iboq0h223s -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_lhfelkql3d 容器_ru0xz0k6bk -->
                    <al-box class="vid_lhfelkql3d">
                      <!-- begin vid_vwr7kqc9py 项目结束时间 -->
                      <span class="vid_vwr7kqc9py"> 项目结束时间 </span>
                      <!-- end vid_vwr7kqc9py 项目结束时间 -->
                    </al-box>
                    <!-- end vid_lhfelkql3d 容器_ru0xz0k6bk -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_1ssor0vurq 容器_a80962bazd -->
                    <al-box class="vid_1ssor0vurq">
                      <!-- begin vid_d5do19ir4k 营销人员 -->
                      <span class="vid_d5do19ir4k">
                        {{ renderStringInTemplate(vid_d5do19ir4k_props.rt_text) }}
                      </span>
                      <!-- end vid_d5do19ir4k 营销人员 -->
                    </al-box>
                    <!-- end vid_1ssor0vurq 容器_a80962bazd -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_rp39n6l74j 容器_bddbr8so2g -->
                    <al-box class="vid_rp39n6l74j">
                      <!-- begin vid_oneof7p8h9 申请人所在部门 -->
                      <span class="vid_oneof7p8h9"> 申请人所在部门 </span>
                      <!-- end vid_oneof7p8h9 申请人所在部门 -->
                    </al-box>
                    <!-- end vid_rp39n6l74j 容器_bddbr8so2g -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_98zaveb82m 容器_c1wm9tqf18 -->
                    <al-box class="vid_98zaveb82m">
                      <!-- begin vid_mirym7gnna 简单文本_bpj417i3pa -->
                      <span class="vid_mirym7gnna">
                        {{ renderStringInTemplate(vid_mirym7gnna_props.rt_text) }}
                      </span>
                      <!-- end vid_mirym7gnna 简单文本_bpj417i3pa -->
                    </al-box>
                    <!-- end vid_98zaveb82m 容器_c1wm9tqf18 -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_fo777grzz5 容器_a66arp19i4 -->
                    <al-box class="vid_fo777grzz5">
                      <!-- begin vid_jqkf538iqc 项目经理 -->
                      <span class="vid_jqkf538iqc"> 项目经理 </span>
                      <!-- end vid_jqkf538iqc 项目经理 -->
                    </al-box>
                    <!-- end vid_fo777grzz5 容器_a66arp19i4 -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_yy7ygz7zsl 容器_n58xd03xe4 -->
                    <al-box class="vid_yy7ygz7zsl">
                      <!-- begin vid_6hh0wbrs1i 简单文本_aw57qjlya0 -->
                      <span class="vid_6hh0wbrs1i">
                        {{ renderStringInTemplate(vid_6hh0wbrs1i_props.rt_text) }}
                      </span>
                      <!-- end vid_6hh0wbrs1i 简单文本_aw57qjlya0 -->
                    </al-box>
                    <!-- end vid_yy7ygz7zsl 容器_n58xd03xe4 -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_o5bfqj7jfz 容器_sacx82zhd2 -->
                    <al-box class="vid_o5bfqj7jfz">
                      <!-- begin vid_t7nme1u6ef 简单文本_zzxn2604o3 -->
                      <span class="vid_t7nme1u6ef"> 项目负责人 </span>
                      <!-- end vid_t7nme1u6ef 简单文本_zzxn2604o3 -->
                    </al-box>
                    <!-- end vid_o5bfqj7jfz 容器_sacx82zhd2 -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_bozskhftm7 容器_nngam0ip12 -->
                    <al-box class="vid_bozskhftm7">
                      <!-- begin vid_1lu28x6kdb 项目备注 -->
                      <span class="vid_1lu28x6kdb">
                        {{ renderStringInTemplate(vid_1lu28x6kdb_props.rt_text) }}
                      </span>
                      <!-- end vid_1lu28x6kdb 项目备注 -->
                    </al-box>
                    <!-- end vid_bozskhftm7 容器_nngam0ip12 -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_c6ksxvstfk 容器_h7i7hs9do2 -->
                    <al-box class="vid_c6ksxvstfk">
                      <!-- begin vid_wmn41j4hbl 营销人员 -->
                      <span class="vid_wmn41j4hbl"> 营销人员 </span>
                      <!-- end vid_wmn41j4hbl 营销人员 -->
                    </al-box>
                    <!-- end vid_c6ksxvstfk 容器_h7i7hs9do2 -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_ni3wuzf8dg 容器_w9no5pr6zc -->
                    <al-box class="vid_ni3wuzf8dg">
                      <!-- begin vid_fm2ojahzgz 简单文本_mca824ly1q -->
                      <span class="vid_fm2ojahzgz">
                        {{ renderStringInTemplate(vid_fm2ojahzgz_props.rt_text) }}
                      </span>
                      <!-- end vid_fm2ojahzgz 简单文本_mca824ly1q -->
                    </al-box>
                    <!-- end vid_ni3wuzf8dg 容器_w9no5pr6zc -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_inu1u8xb2j 容器_hh61lv425x -->
                    <al-box class="vid_inu1u8xb2j">
                      <!-- begin vid_iz25xq14ar 项目干系人 -->
                      <span class="vid_iz25xq14ar"> 项目干系人 </span>
                      <!-- end vid_iz25xq14ar 项目干系人 -->
                    </al-box>
                    <!-- end vid_inu1u8xb2j 容器_hh61lv425x -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_lfs222jmbc 容器_m4wf202t18 -->
                    <al-box class="vid_lfs222jmbc">
                      <!-- begin vid_3lumos8it3 简单文本_bp9pzq5r32 -->
                      <span class="vid_3lumos8it3">
                        {{ renderStringInTemplate(vid_3lumos8it3_props.rt_text) }}
                      </span>
                      <!-- end vid_3lumos8it3 简单文本_bp9pzq5r32 -->
                    </al-box>
                    <!-- end vid_lfs222jmbc 容器_m4wf202t18 -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_ramdiw3ja6 容器_hynfkpdsdg -->
                    <al-box class="vid_ramdiw3ja6">
                      <!-- begin vid_vt9k7keox1 附件 -->
                      <span class="vid_vt9k7keox1"> 附件 </span>
                      <!-- end vid_vt9k7keox1 附件 -->
                    </al-box>
                    <!-- end vid_ramdiw3ja6 容器_hynfkpdsdg -->
                  </a-col>
                  <a-col :span="5">
                    <!-- begin vid_0jel16b4ak 容器_cysjmskc13 -->
                    <al-box class="vid_0jel16b4ak">
                      <!-- begin vid_c8uu7nyyk4 简单文本_74dpfy7jad -->
                      <span v-if="false" class="vid_c8uu7nyyk4">
                        {{ renderStringInTemplate(vid_c8uu7nyyk4_props.rt_text) }}
                      </span>
                      <!-- end vid_c8uu7nyyk4 简单文本_74dpfy7jad -->
                      <!-- begin vid_107pnr00rx 自定义模板_mxwzhpvwzz -->

                      <template
                        v-if="dataConnector_conn_lekr0gf5rr_response && dataConnector_conn_lekr0gf5rr_response && dataConnector_conn_lekr0gf5rr_response.attachment && dataConnector_conn_lekr0gf5rr_response.attachment !== ''"
                      >
                        <a v-for="item in JSON.parse(dataConnector_conn_lekr0gf5rr_response.attachment)" :href="item.url" :download="item.name">{{ item.name }}</a>
                      </template>
                      <!-- end vid_107pnr00rx 自定义模板_mxwzhpvwzz -->
                    </al-box>
                    <!-- end vid_0jel16b4ak 容器_cysjmskc13 -->
                  </a-col>
                  <a-col :span="3">
                    <!-- begin vid_2zbigasesr 容器_431bfr380w -->
                    <al-box class="vid_2zbigasesr">
                      <!-- begin vid_n2p43k31dy 简单文本_r1dn63mkn0 -->
                      <span class="vid_n2p43k31dy"> 项目备注 </span>
                      <!-- end vid_n2p43k31dy 简单文本_r1dn63mkn0 -->
                    </al-box>
                    <!-- end vid_2zbigasesr 容器_431bfr380w -->
                  </a-col>
                  <a-col :span="13">
                    <!-- begin vid_ikzr85lpk8 容器_frg6ossynx -->
                    <al-box class="vid_ikzr85lpk8">
                      <!-- begin vid_i7d5ckxt5t 简单文本_ba16332ypn -->
                      <span class="vid_i7d5ckxt5t">
                        {{ renderStringInTemplate(vid_i7d5ckxt5t_props.rt_text) }}
                      </span>
                      <!-- end vid_i7d5ckxt5t 简单文本_ba16332ypn -->
                    </al-box>
                    <!-- end vid_ikzr85lpk8 容器_frg6ossynx -->
                  </a-col>
                </a-row>
                <!-- end vid_n40jlnry35 布局容器_kn5fc1io0u -->
              </a-form>
              <!-- end vid_1o6x5h66j0 项目详情表单容器 -->
            </a-form-item>
            <!-- end vid_9351xbiw30 表单项容器_wm2xbf0s7b -->
          </al-box>
          <!-- end vid_6dwl9cu0n6 容器_6ngvilq9es -->
          <!-- begin vid_nwvgdzh6je 容器_p29djnn4bj -->
          <al-box class="vid_nwvgdzh6je">
            <!-- begin vid_ibrandtx3p 标签页_5f39hidl5h -->
            <a-tabs class="vid_ibrandtx3p" v-model:activeKey="vid_ibrandtx3p_props.activeKey">
              <template #leftExtra> </template>
              <template #rightExtra> </template>
              <a-tab-pane key="Tab1" force-render>
                <template #tab> 里程碑 </template>
                <!-- begin vid_d10ddmizcp 筛选与表格的表单容器 -->
                <a-form ref="vid_d10ddmizcp_ref" class="vid_d10ddmizcp" :model="g_d3kpj6k5e2" :formModel="vid_d10ddmizcp_props.formModel">
                  <!-- begin vid_4ico5ejg3q 布局容器_5ls6mbxpqs -->
                  <a-row class="vid_4ico5ejg3q" :gutter="16" :slots="'6:6:6:6'">
                    <a-col :span="6">
                      <!-- begin vid_9camwpx72y 表单项容器_d0quu6nnx2 -->
                      <a-form-item name="milepostName" :rules="g_d3kpj6k5e2_rules[`milepostName`]" class="vid_9camwpx72y" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                        <!-- begin vid_lejnr9eg5j 筛选里程碑名称_milepostName -->
                        <a-select
                          class="vid_lejnr9eg5j"
                          :getPopupContainer="(node) => node.parentNode"
                          v-model:value="g_d3kpj6k5e2.milepostName"
                          :showArrow="true"
                          :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                          :dropdownMatchSelectWidth="true"
                          :showSearch="true"
                          :placeholder="'请选择'"
                          :allowClear="true"
                          :searchValue="vid_lejnr9eg5j_props.searchValue"
                          :selected="vid_lejnr9eg5j_props.selected"
                          :options="vid_lejnr9eg5j_options()"
                          @focus="handle_vid_lejnr9eg5j_focus"
                          @change="handle_vid_lejnr9eg5j_change"
                          @search="handle_vid_lejnr9eg5j_search"
                        >
                        </a-select>
                        <!-- end vid_lejnr9eg5j 筛选里程碑名称_milepostName -->
                        <template #label>
                          <!-- begin vid_69us4hpjyk 简单文本_oo5f7we764 -->
                          <span class="vid_69us4hpjyk"> 里程碑 </span>
                          <!-- end vid_69us4hpjyk 简单文本_oo5f7we764 -->
                        </template>
                      </a-form-item>
                      <!-- end vid_9camwpx72y 表单项容器_d0quu6nnx2 -->
                    </a-col>
                    <a-col :span="6">
                      <!-- begin vid_9jxqy97nnq 表单项容器_03l987c5cd -->
                      <a-form-item name="taskOwner" :rules="g_d3kpj6k5e2_rules[`taskOwner`]" class="vid_9jxqy97nnq" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                        <!-- begin vid_dc6qyecxin 筛选任务负责人_taskOwner -->
                        <a-select
                          class="vid_dc6qyecxin"
                          :getPopupContainer="(node) => node.parentNode"
                          v-model:value="g_d3kpj6k5e2.taskOwner"
                          :showArrow="true"
                          :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                          :dropdownMatchSelectWidth="true"
                          :showSearch="true"
                          :placeholder="'请选择'"
                          :allowClear="true"
                          :searchValue="vid_dc6qyecxin_props.searchValue"
                          :selected="vid_dc6qyecxin_props.selected"
                          :options="vid_dc6qyecxin_options()"
                          @focus="handle_vid_dc6qyecxin_focus"
                          @change="handle_vid_dc6qyecxin_change"
                          @search="handle_vid_dc6qyecxin_search"
                        >
                        </a-select>
                        <!-- end vid_dc6qyecxin 筛选任务负责人_taskOwner -->
                        <template #label>
                          <!-- begin vid_ue17qmbzhu 简单文本_fsme06xt43 -->
                          <span class="vid_ue17qmbzhu"> 任务负责人 </span>
                          <!-- end vid_ue17qmbzhu 简单文本_fsme06xt43 -->
                        </template>
                      </a-form-item>
                      <!-- end vid_9jxqy97nnq 表单项容器_03l987c5cd -->
                    </a-col>
                    <a-col :span="6">
                      <!-- begin vid_bwtpi53nvg 表单项容器_lgroxjpunh -->
                      <a-form-item name="taskParticipant" :rules="g_d3kpj6k5e2_rules[`taskParticipant`]" class="vid_bwtpi53nvg" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                        <!-- begin vid_qz4a31s4ec 筛选任务参与人_taskParticipant -->
                        <a-select
                          class="vid_qz4a31s4ec"
                          :getPopupContainer="(node) => node.parentNode"
                          v-model:value="g_d3kpj6k5e2.taskParticipant"
                          :showArrow="true"
                          :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                          :dropdownMatchSelectWidth="true"
                          :showSearch="true"
                          :placeholder="'请选择'"
                          :allowClear="true"
                          :searchValue="vid_qz4a31s4ec_props.searchValue"
                          :selected="vid_qz4a31s4ec_props.selected"
                          :options="vid_qz4a31s4ec_options()"
                          @focus="handle_vid_qz4a31s4ec_focus"
                          @change="handle_vid_qz4a31s4ec_change"
                          @search="handle_vid_qz4a31s4ec_search"
                        >
                        </a-select>
                        <!-- end vid_qz4a31s4ec 筛选任务参与人_taskParticipant -->
                        <template #label>
                          <!-- begin vid_obwk4eyqvf 简单文本_2a17rxwg31 -->
                          <span class="vid_obwk4eyqvf"> 任务参与人 </span>
                          <!-- end vid_obwk4eyqvf 简单文本_2a17rxwg31 -->
                        </template>
                      </a-form-item>
                      <!-- end vid_bwtpi53nvg 表单项容器_lgroxjpunh -->
                    </a-col>
                    <a-col :span="6">
                      <!-- begin vid_bnygbuffav 表单项容器_fnxmxxsyjy -->
                      <a-form-item name="taskStatus" :rules="g_d3kpj6k5e2_rules[`taskStatus`]" class="vid_bnygbuffav" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                        <!-- begin vid_tfdys2yv27 筛选任务状态_taskStatus -->
                        <a-select
                          class="vid_tfdys2yv27"
                          :getPopupContainer="(node) => node.parentNode"
                          v-model:value="g_d3kpj6k5e2.taskStatus"
                          :showArrow="true"
                          :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                          :dropdownMatchSelectWidth="true"
                          :showSearch="true"
                          :placeholder="'请选择'"
                          :allowClear="true"
                          :searchValue="vid_tfdys2yv27_props.searchValue"
                          :selected="vid_tfdys2yv27_props.selected"
                          :options="vid_tfdys2yv27_options()"
                          @change="handle_vid_tfdys2yv27_change"
                          @search="handle_vid_tfdys2yv27_search"
                        >
                        </a-select>
                        <!-- end vid_tfdys2yv27 筛选任务状态_taskStatus -->
                        <template #label>
                          <!-- begin vid_tfud3qzaaq 里程碑和任务状态 -->
                          <span class="vid_tfud3qzaaq"> 里程碑和任务状态 </span>
                          <!-- end vid_tfud3qzaaq 里程碑和任务状态 -->
                        </template>
                      </a-form-item>
                      <!-- end vid_bnygbuffav 表单项容器_fnxmxxsyjy -->
                    </a-col>
                  </a-row>
                  <!-- end vid_4ico5ejg3q 布局容器_5ls6mbxpqs -->
                  <!-- begin vid_dnk8wgn3ct 布局容器_bgueylz7w1 -->
                  <a-row class="vid_dnk8wgn3ct" :gutter="16" :slots="'6:6:6:6'">
                    <a-col :span="6">
                      <!-- begin vid_n4efbvzq6b 表单项容器_wi5cdvu5rd -->
                      <a-form-item name="stateInput" :rules="g_d3kpj6k5e2_rules[`stateInput`]" class="vid_n4efbvzq6b" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                        <!-- begin vid_nl8vhqj1u2 筛选工时投入状态_stateInput -->
                        <a-select
                          class="vid_nl8vhqj1u2"
                          :getPopupContainer="(node) => node.parentNode"
                          v-model:value="g_d3kpj6k5e2.stateInput"
                          :showArrow="true"
                          :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
                          :dropdownMatchSelectWidth="true"
                          :showSearch="true"
                          :placeholder="'请选择'"
                          :allowClear="true"
                          :searchValue="vid_nl8vhqj1u2_props.searchValue"
                          :selected="vid_nl8vhqj1u2_props.selected"
                          :options="vid_nl8vhqj1u2_options()"
                          @change="handle_vid_nl8vhqj1u2_change"
                          @search="handle_vid_nl8vhqj1u2_search"
                        >
                        </a-select>
                        <!-- end vid_nl8vhqj1u2 筛选工时投入状态_stateInput -->
                        <template #label>
                          <!-- begin vid_tokvnhsis3 工时投入状态 -->
                          <span class="vid_tokvnhsis3"> 工时投入状态 </span>
                          <!-- end vid_tokvnhsis3 工时投入状态 -->
                        </template>
                      </a-form-item>
                      <!-- end vid_n4efbvzq6b 表单项容器_wi5cdvu5rd -->
                    </a-col>
                    <a-col :span="6">
                      <!-- begin vid_pvkdpxajgh 表单项容器_vg3eyy2rfb -->
                      <a-form-item name="endTime" :rules="g_d3kpj6k5e2_rules[`endTime`]" class="vid_pvkdpxajgh" :label-col='{"span":8}' :wrapper-col='{"span":16}'>
                        <!-- begin vid_55422xa0a6 筛选任务结束时间_endTime -->
                        <a-date-picker
                          class="vid_55422xa0a6"
                          :getPopupContainer="(node) => node.parentNode"
                          v-model:value="g_d3kpj6k5e2.endTime"
                          :valueFormat="'YYYY-MM-DD'"
                          :showTime="vid_55422xa0a6_props.showTime"
                        >
                        </a-date-picker>
                        <!-- end vid_55422xa0a6 筛选任务结束时间_endTime -->
                        <template #label>
                          <!-- begin vid_aerdsscefc 简单文本_6rc7ockgqe -->
                          <span class="vid_aerdsscefc"> 任务结束时间 </span>
                          <!-- end vid_aerdsscefc 简单文本_6rc7ockgqe -->
                        </template>
                      </a-form-item>
                      <!-- end vid_pvkdpxajgh 表单项容器_vg3eyy2rfb -->
                    </a-col>
                    <a-col :span="6">
                      <!-- begin vid_iomeos05va 容器_aos5q61uuf -->
                      <al-box class="vid_iomeos05va">
                        <!-- begin vid_5kc43qdc7l 查询 -->
                        <a-button class="vid_5kc43qdc7l" :type="'primary'" @click="handle_vid_5kc43qdc7l_click"> 查询 </a-button>
                        <!-- end vid_5kc43qdc7l 查询 -->
                        <!-- begin vid_o22b1s6q8s 重置 -->
                        <a-button class="vid_o22b1s6q8s" @click="handle_vid_o22b1s6q8s_click"> 重置 </a-button>
                        <!-- end vid_o22b1s6q8s 重置 -->
                      </al-box>
                      <!-- end vid_iomeos05va 容器_aos5q61uuf -->
                    </a-col>
                    <a-col :span="6"> </a-col>
                  </a-row>
                  <!-- end vid_dnk8wgn3ct 布局容器_bgueylz7w1 -->
                  <!-- begin vid_i7ag41r0vp 布局容器_qce5oelm3f -->
                  <a-row class="vid_i7ag41r0vp" :slots="'24'">
                    <a-col :span="24">
                      <!-- begin vid_r8t02dukyy 标签页_h8se3vpdp8 -->
                      <a-tabs class="vid_r8t02dukyy" v-model:activeKey="vid_r8t02dukyy_props.activeKey" :type="'card'">
                        <template #leftExtra> </template>
                        <template #rightExtra>
                          <!-- begin vid_kx8jxb06ep 容器_n7kixk3gdg -->
                          <al-box class="vid_kx8jxb06ep"> </al-box>
                          <!-- end vid_kx8jxb06ep 容器_n7kixk3gdg -->
                        </template>
                        <a-tab-pane key="Tab1" force-render>
                          <template #tab> 里程碑 </template>
                          <!-- begin vid_921batvifr 布局容器_n55obej1y8 -->
                          <a-row class="vid_921batvifr">
                            <a-col :span="8"> </a-col>
                            <a-col :span="8"> </a-col>
                            <a-col :span="8">
                              <!-- begin vid_6wbmxsixow 容器_nnyoaxc8yj -->
                              <al-box class="vid_6wbmxsixow">
                                <!-- begin vid_aw4ll60tme 新建 -->
                                <a-button class="vid_aw4ll60tme" :type="'primary'" @click="handle_vid_aw4ll60tme_click">
                                  <template #icon><plus-outlined /></template>

                                  新建
                                </a-button>
                                <!-- end vid_aw4ll60tme 新建 -->
                                <!-- begin vid_tyesobnast 导入 -->
                                <a-button class="vid_tyesobnast">
                                  <template #icon><download-outlined /></template>

                                  导入
                                </a-button>
                                <!-- end vid_tyesobnast 导入 -->
                                <!-- begin vid_ki91nriw5u 变更记录 -->
                                <a-button class="vid_ki91nriw5u" @click="handle_vid_ki91nriw5u_click">
                                  <template #icon><issues-close-outlined /></template>

                                  变更记录
                                </a-button>
                                <!-- end vid_ki91nriw5u 变更记录 -->
                              </al-box>
                              <!-- end vid_6wbmxsixow 容器_nnyoaxc8yj -->
                            </a-col>
                          </a-row>
                          <!-- end vid_921batvifr 布局容器_n55obej1y8 -->
                          <!-- begin vid_ea0vg4m7vo 里程碑表格_l2aibglp7z -->
                          <!-- 里程碑表格_l2aibglp7z -->
                          <a-table
                            class="vid_ea0vg4m7vo"
                            :totalNumber="vid_ea0vg4m7vo_props.totalNumber"
                            :editRowSaveLoading="vid_ea0vg4m7vo_props.editRowSaveLoading"
                            :sorter="vid_ea0vg4m7vo_props.sorter"
                            :currentRow="vid_ea0vg4m7vo_props.currentRow"
                            :selectedRowList="vid_ea0vg4m7vo_props.selectedRowList"
                            :data-source="vid_ea0vg4m7vo_options()"
                            @change="handle_vid_ea0vg4m7vo_change"
                            :columns="vid_ea0vg4m7vo_columns"
                            :pagination="vid_ea0vg4m7vo_pagination"
                            row-key="id"
                            @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_ea0vg4m7vo')"
                            :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                            :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
                          >
                            <template #headerCell="{ title, column }">
                              <TableHeaderCell :title="title" :column="column" />
                            </template>
                            <template #bodyCell="{ text, column, record, index }">
                              <!-- 操作列 -->
                              <div v-if="column.dataIndex === 'vid_ea0vg4m7vo_operation'" class="operation-cell">
                                <!-- 默认分组 -->
                                <span>
                                  <a-button type="link" @click="handle_vid_ea0vg4m7vo_clickBtn_jc22nsv2yr(record)">检查清单</a-button>
                                  <a-button type="link" @click="handle_vid_ea0vg4m7vo_clickBtn_7t9yvwo6rz(record)">编辑</a-button>
                                  <a-button type="link" @click="handle_vid_ea0vg4m7vo_clickBtn_o6bss3511o(record)">删除</a-button>
                                </span>
                              </div>

                              <!-- 序号列 -->
                              <template v-if="column && column.dataIndex === 'vid_ea0vg4m7vo_serialNumber'">
                                {{ index + 1 }}
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑名称"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostName' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑开始日期"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostStartTime' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑结束日期"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostEndTime' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑任务数"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostTaskQuantity' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑状态"} 列内容 -->
                              <template v-if="column.dataIndex === 'milestoneState' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"工时投入状态"} 列内容 -->
                              <template v-if="column.dataIndex === 'stateInput' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑id"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostId' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务id"} 列内容 -->
                              <template v-if="column.dataIndex === 'taskId' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"项目阶段ID"} 列内容 -->
                              <template v-if="column.dataIndex === 'projectPhaseId' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_ea0vg4m7vo_props.boundaryValueMap"
                                  :dataSource="vid_ea0vg4m7vo_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                            </template>
                          </a-table>
                          <!-- end vid_ea0vg4m7vo 里程碑表格_l2aibglp7z -->
                        </a-tab-pane>
                        <a-tab-pane key="Tab2" force-render>
                          <template #tab> 任务 </template>
                          <!-- begin vid_24dspn722w 布局容器_87cdlgbiel -->
                          <a-row v-if="false" class="vid_24dspn722w">
                            <a-col :span="8"> </a-col>
                            <a-col :span="8"> </a-col>
                            <a-col :span="8">
                              <!-- begin vid_o09mfd0obz 容器_mm3x884aap -->
                              <al-box class="vid_o09mfd0obz">
                                <!-- begin vid_24ramrd9fn 新建 -->
                                <a-button class="vid_24ramrd9fn" :type="'primary'" @click="handle_vid_24ramrd9fn_click">
                                  <template #icon><plus-outlined /></template>

                                  新建
                                </a-button>
                                <!-- end vid_24ramrd9fn 新建 -->
                                <!-- begin vid_mg5vvxdag5 导入 -->
                                <a-button class="vid_mg5vvxdag5">
                                  <template #icon><download-outlined /></template>

                                  导入
                                </a-button>
                                <!-- end vid_mg5vvxdag5 导入 -->
                              </al-box>
                              <!-- end vid_o09mfd0obz 容器_mm3x884aap -->
                            </a-col>
                          </a-row>
                          <!-- end vid_24dspn722w 布局容器_87cdlgbiel -->
                          <!-- begin vid_xrk0mz30yy 任务表格_xam91fqixu -->
                          <!-- 任务表格_xam91fqixu -->
                          <a-table
                            class="vid_xrk0mz30yy"
                            :totalNumber="vid_xrk0mz30yy_props.totalNumber"
                            :editRowSaveLoading="vid_xrk0mz30yy_props.editRowSaveLoading"
                            :sorter="vid_xrk0mz30yy_props.sorter"
                            :currentRow="vid_xrk0mz30yy_props.currentRow"
                            :selectedRowList="vid_xrk0mz30yy_props.selectedRowList"
                            :data-source="vid_xrk0mz30yy_options()"
                            @change="handle_vid_xrk0mz30yy_change"
                            :columns="vid_xrk0mz30yy_columns"
                            :pagination="vid_xrk0mz30yy_pagination"
                            row-key="id"
                            @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_xrk0mz30yy')"
                            :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                            :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
                          >
                            <template #headerCell="{ title, column }">
                              <TableHeaderCell :title="title" :column="column" />
                            </template>
                            <template #bodyCell="{ text, column, record, index }">
                              <!-- 操作列 -->
                              <div v-if="column.dataIndex === 'vid_xrk0mz30yy_operation'" class="operation-cell">
                                <!-- 默认分组 -->
                                <span>
                                  <a-button type="link" @click="handle_vid_xrk0mz30yy_clickBtn_oeqpfbgizb(record)">完成</a-button>

                                  <a-button type="link" @click="handle_vid_xrk0mz30yy_clickBtn_rz02p6dfu5(record)">删除</a-button>
                                </span>
                              </div>

                              <!-- 序号列 -->
                              <template v-if="column && column.dataIndex === 'vid_xrk0mz30yy_serialNumber'">
                                {{ index + 1 }}
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑周期"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostPeriod' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务名称"} 列内容 -->
                              <template v-if="column.dataIndex === 'taskName' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑名称"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostName' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"依赖任务"} 列内容 -->
                              <template v-if="column.dataIndex === 'taskDependency' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务负责人"} 列内容 -->
                              <template v-if="column.dataIndex === 'taskOwner' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务参与人"} 列内容 -->
                              <template v-if="column.dataIndex === 'taskParticipant' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务开始日期"} 列内容 -->
                              <template v-if="column.dataIndex === 'startTime' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务结束日期"} 列内容 -->
                              <template v-if="column.dataIndex === 'endTime' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务状态"} 列内容 -->
                              <template v-if="column.dataIndex === 'taskStatus' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"工时投入状态"} 列内容 -->
                              <template v-if="column.dataIndex === 'stateInput' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑开始日期"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostStartTime' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑结束日期"} 列内容 -->
                              <template v-if="column.dataIndex === 'milepostEndTime' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                              <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务id"} 列内容 -->
                              <template v-if="column.dataIndex === 'taskId' && !column.customRender">
                                <text-table-cell
                                  :rowData="record"
                                  :conditionValueMap="vid_xrk0mz30yy_props.boundaryValueMap"
                                  :dataSource="vid_xrk0mz30yy_props.contentDataSource[column.dataIndex]"
                                  :columnsConfig="column"
                                  :value="text"
                                />
                              </template>
                            </template>
                          </a-table>
                          <!-- end vid_xrk0mz30yy 任务表格_xam91fqixu -->
                        </a-tab-pane>
                      </a-tabs>
                      <!-- end vid_r8t02dukyy 标签页_h8se3vpdp8 -->
                    </a-col>
                  </a-row>
                  <!-- end vid_i7ag41r0vp 布局容器_qce5oelm3f -->
                </a-form>
                <!-- end vid_d10ddmizcp 筛选与表格的表单容器 -->
              </a-tab-pane>
              <a-tab-pane key="Tab2" force-render>
                <template #tab> 资源投入 </template>
                <!-- begin vid_miktasukf5 容器_yh3clczklm -->
                <al-box class="vid_miktasukf5">
                  <!-- begin vid_9f8xx1jvbg 布局容器_cn1a5lp215 -->
                  <a-row class="vid_9f8xx1jvbg">
                    <a-col :span="8">
                      <!-- begin vid_qa4w1j2kx2 容器_gijih8777j -->
                      <al-box class="vid_qa4w1j2kx2">
                        <!-- begin vid_2np2mdeca7 简单文本_p62qev6pn5 -->
                        <span class="vid_2np2mdeca7"> 项目预算（万元）： </span>
                        <!-- end vid_2np2mdeca7 简单文本_p62qev6pn5 -->
                        <!-- begin vid_thmizi8his 800000 -->
                        <span class="vid_thmizi8his">
                          {{ renderStringInTemplate(vid_thmizi8his_props.rt_text) }}
                        </span>
                        <!-- end vid_thmizi8his 800000 -->
                      </al-box>
                      <!-- end vid_qa4w1j2kx2 容器_gijih8777j -->
                    </a-col>
                    <a-col :span="8">
                      <!-- begin vid_bl8177v85e 容器_k573jsgw0a -->
                      <al-box class="vid_bl8177v85e">
                        <!-- begin vid_b0rcrbhx03 预计工时（小时）： -->
                        <span class="vid_b0rcrbhx03"> 预计工时（小时）： </span>
                        <!-- end vid_b0rcrbhx03 预计工时（小时）： -->
                        <!-- begin vid_c23z2h41bs 简单文本_qkylvybckx -->
                        <span class="vid_c23z2h41bs">
                          {{ renderStringInTemplate(vid_c23z2h41bs_props.rt_text) }}
                        </span>
                        <!-- end vid_c23z2h41bs 简单文本_qkylvybckx -->
                      </al-box>
                      <!-- end vid_bl8177v85e 容器_k573jsgw0a -->
                    </a-col>
                    <a-col :span="8">
                      <!-- begin vid_za6w2sts16 容器_e2wfy55f6l -->
                      <al-box class="vid_za6w2sts16">
                        <!-- begin vid_xf0gg7gdc8 实际工时（小时）： -->
                        <span class="vid_xf0gg7gdc8"> 实际工时（小时）： </span>
                        <!-- end vid_xf0gg7gdc8 实际工时（小时）： -->
                        <!-- begin vid_lws3y9xg07 800000 -->
                        <span class="vid_lws3y9xg07">
                          {{ renderStringInTemplate(vid_lws3y9xg07_props.rt_text) }}
                        </span>
                        <!-- end vid_lws3y9xg07 800000 -->
                      </al-box>
                      <!-- end vid_za6w2sts16 容器_e2wfy55f6l -->
                    </a-col>
                  </a-row>
                  <!-- end vid_9f8xx1jvbg 布局容器_cn1a5lp215 -->
                  <!-- begin vid_h4ydkfxkhj 资源投入表格 -->
                  <!-- 资源投入表格 -->
                  <a-table
                    class="vid_h4ydkfxkhj"
                    :totalNumber="vid_h4ydkfxkhj_props.totalNumber"
                    :editRowSaveLoading="vid_h4ydkfxkhj_props.editRowSaveLoading"
                    :sorter="vid_h4ydkfxkhj_props.sorter"
                    :currentRow="vid_h4ydkfxkhj_props.currentRow"
                    :selectedRowList="vid_h4ydkfxkhj_props.selectedRowList"
                    :data-source="vid_h4ydkfxkhj_options()"
                    @change="handle_vid_h4ydkfxkhj_change"
                    :columns="vid_h4ydkfxkhj_columns"
                    :pagination="vid_h4ydkfxkhj_pagination"
                    row-key="id"
                    @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_h4ydkfxkhj')"
                    :scroll="{ x: 'max-content', scrollToFirstRowOnChange: true, }"
                    :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
                  >
                    <template #headerCell="{ title, column }">
                      <TableHeaderCell :title="title" :column="column" />
                    </template>
                    <template #bodyCell="{ text, column, record, index }">
                      <!-- 序号列 -->
                      <template v-if="column && column.dataIndex === 'vid_h4ydkfxkhj_serialNumber'">
                        {{ index + 1 }}
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑周期"} 列内容 -->
                      <template v-if="column.dataIndex === 'milepostPeriod' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"里程碑名称"} 列内容 -->
                      <template v-if="column.dataIndex === 'milepostName' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务名称"} 列内容 -->
                      <template v-if="column.dataIndex === 'taskName' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务负责人"} 列内容 -->
                      <template v-if="column.dataIndex === 'taskOwner' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务参与人"} 列内容 -->
                      <template v-if="column.dataIndex === 'taskParticipant' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务开始时间"} 列内容 -->
                      <template v-if="column.dataIndex === 'startTime' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务结束时间"} 列内容 -->
                      <template v-if="column.dataIndex === 'endTime' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"任务预算"} 列内容 -->
                      <template v-if="column.dataIndex === 'taskBudget' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"预计工时"} 列内容 -->
                      <template v-if="column.dataIndex === 'workingHours' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                      <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"实际工时"} 列内容 -->
                      <template v-if="column.dataIndex === 'actualWorkingHours' && !column.customRender">
                        <text-table-cell
                          :rowData="record"
                          :conditionValueMap="vid_h4ydkfxkhj_props.boundaryValueMap"
                          :dataSource="vid_h4ydkfxkhj_props.contentDataSource[column.dataIndex]"
                          :columnsConfig="column"
                          :value="text"
                        />
                      </template>
                    </template>
                  </a-table>
                  <!-- end vid_h4ydkfxkhj 资源投入表格 -->
                </al-box>
                <!-- end vid_miktasukf5 容器_yh3clczklm -->
              </a-tab-pane>
              <a-tab-pane key="Tab3" force-render>
                <template #tab> 项目分析 </template>
                <!-- begin vid_s5807dlal1 布局容器_7gj1zwbdit -->
                <a-row class="vid_s5807dlal1" :slots="'12:12:24'">
                  <a-col :span="12">
                    <!-- begin vid_j49xrv5ndx 项目分析 -->
                    <span class="vid_j49xrv5ndx"> 项目分析 </span>
                    <!-- end vid_j49xrv5ndx 项目分析 -->
                  </a-col>
                  <a-col :span="12">
                    <!-- begin vid_0f7nek1t0r 容器_8hstp3ot2x -->
                    <al-box class="vid_0f7nek1t0r">
                      <!-- begin vid_0yeiqwwfsg 查看绩效 -->
                      <a-button class="vid_0yeiqwwfsg" :type="'primary'"> 查看绩效 </a-button>
                      <!-- end vid_0yeiqwwfsg 查看绩效 -->
                      <!-- begin vid_gbu0a76kp6 查看JIRA -->
                      <a-button class="vid_gbu0a76kp6" :type="'primary'"> 查看JIRA </a-button>
                      <!-- end vid_gbu0a76kp6 查看JIRA -->
                    </al-box>
                    <!-- end vid_0f7nek1t0r 容器_8hstp3ot2x -->
                  </a-col>
                  <a-col :span="24">
                    <!-- begin vid_nl7btm6x7q 自定义模板_6qke7xpyez -->
                    <div class="data-analysis">
                      <a-row class="first-row">
                        <a-col :span="12">
                          <a-card class="mr10">
                            <div class="first-chart-title">
                              <span
                                >项目整体进度:
                                <span class="ml10" v-if="state.apiData.projectOverallProgressDto"> {{ state.apiData.projectOverallProgressDto.overallProgress }}% </span>
                              </span>
                              <span
                                >超工时任务: <span class="ml10" v-if="state.apiData.projectOverallProgressDto"> {{ state.apiData.projectOverallProgressDto.overtime }}% </span></span
                              >
                            </div>
                            <div ref="chart1" class="chart" />
                          </a-card>
                        </a-col>
                        <a-col :span="12">
                          <a-card class="mr10">
                            <div class="first-chart-title">
                              <span
                                >项目总预算:
                                <span class="ml10" v-if="state.apiData.projectBudgetDto">
                                  {{ state.apiData.projectBudgetDto.projectBudget }}
                                </span>
                              </span>
                              <span
                                >已发生成本:
                                <span class="ml10" v-if="state.apiData.projectBudgetDto">
                                  {{ state.apiData.projectBudgetDto.work }}
                                </span>
                              </span>
                            </div>
                            <div ref="chart2" class="chart" />
                          </a-card>
                        </a-col>
                      </a-row>
                      <a-row class="other-row">
                        <a-col :span="8">
                          <a-card class="mr10">
                            <div class="chart-title"> 角色占比 </div>
                            <div ref="chart3" class="chart" />
                          </a-card>
                        </a-col>
                        <a-col :span="8">
                          <a-card class="ml10 mr10">
                            <div class="chart-title"> 角色成本占比 </div>
                            <div ref="chart4" class="chart" />
                          </a-card>
                        </a-col>
                        <a-col :span="8">
                          <a-card class="ml10">
                            <div class="chart-title"> 角色投入工时 </div>
                            <div ref="chart5" class="chart" />
                          </a-card>
                        </a-col>
                      </a-row>
                      <a-row class="other-row">
                        <a-col :span="16">
                          <a-card class="mr10">
                            <div class="chart-title">
                              <span>里程碑工时和预算跟踪</span>
                              <a-radio-group v-model:value="state.value1" button-style="solid" @change="genChart6">
                                <a-radio-button value="time">工时</a-radio-button>
                                <a-radio-button value="source">资源</a-radio-button>
                              </a-radio-group>
                            </div>
                            <div ref="chart6" class="chart" />
                          </a-card>
                        </a-col>
                        <a-col :span="8">
                          <a-card class="ml10">
                            <div class="chart-title">
                              <span>项目投入工时和资源趋势</span>
                              <a-radio-group v-model:value="state.value2" button-style="solid" @change="genChart7">
                                <a-radio-button value="time">工时</a-radio-button>
                                <a-radio-button value="source">资源</a-radio-button>
                              </a-radio-group>
                            </div>
                            <div ref="chart7" class="chart" />
                          </a-card>
                        </a-col>
                      </a-row>
                      <a-row class="other-row">
                        <a-col :span="24">
                          <a-card>
                            <div class="chart-title">
                              <span>人员投入工时和资源</span>
                              <a-radio-group v-model:value="state.value3" button-style="solid" @change="genChart8">
                                <a-radio-button value="time">工时</a-radio-button>
                                <a-radio-button value="source">资源</a-radio-button>
                              </a-radio-group>
                            </div>
                            <div ref="chart8" class="chart" />
                          </a-card>
                        </a-col>
                      </a-row>
                    </div>
                    <!-- end vid_nl7btm6x7q 自定义模板_6qke7xpyez -->
                  </a-col>
                </a-row>
                <!-- end vid_s5807dlal1 布局容器_7gj1zwbdit -->
              </a-tab-pane>
            </a-tabs>
            <!-- end vid_ibrandtx3p 标签页_5f39hidl5h -->
            <!-- begin vid_zk4h5g3q5i 当前用户 -->
            <a-input autocomplete="off" v-if="false" class="vid_zk4h5g3q5i" v-model:value="vid_zk4h5g3q5i_props.value"> </a-input>
            <!-- end vid_zk4h5g3q5i 当前用户 -->
          </al-box>
          <!-- end vid_nwvgdzh6je 容器_p29djnn4bj -->
        </a-col>
      </a-row>
      <!-- end vid_7l57iwltcr 布局容器_chwoxkr4g5 -->
    </a-spin>
  </div>
</template>
<script setup lang="tsx">
  import {
      h, ref, reactive, toRaw, markRaw, watch, computed,
      onBeforeMount, onMounted, onBeforeUnmount, onUnmounted, onActivated, onDeactivated
    } from "vue";
    import { useRoute, useRouter } from 'vue-router';
    const router = useRouter();
    const route = useRoute();
    import { get, post, put, del, request, requestWithHeaders } from '@/utils/http/Axios';
    import { cloneDeep, localGet, merge, getDifferenceArray, traversalTreeStructure, checkCaseCondition, renderStringInTemplate, handleBreadcrumbJump, throttle, permission, getComponentParamsValue } from '@/utils/index';
    import { isNullOrEmpty, isEmptyArr, isNullOrUnDef, isContained, isArray, isEmpty, isObject } from '@/utils/is';
    import dayjs from 'dayjs';
    import { getPagePcChartsDataSourceConvert } from '@/utils/chart';
    import { message, notification, Modal } from 'ant-design-vue'
    import { propertyFormatByNumber, propertyFormatByPercentage, propertyFormatByDate, parseSubFromDataList } from '@/utils/format';
    import colorTheme from '@/design/custom-theme.json';
    
    import UserTableRecords from '@/model/UserTableRecords';
    import { getAppBaseUrl } from '@/utils/index';
    import { sendToken } from "@/hooks/useIframeToken";
    import { useSystemStore } from "@/store/modules/system";
    const systemStore = useSystemStore();
    

  import TextTableCell from '@/components/page/tableCell/text.vue';
  import TooltipTableCell from '@/components/page/tableCell/tooltip.vue';
  import NumberTableCell from '@/components/page/tableCell/number.vue';
  import ProgressTableCell from '@/components/page/tableCell/progress.vue';
  import OptionsTableCell from '@/components/page/tableCell/options.vue';
  import MultipleOptionsTableCell from '@/components/page/tableCell/multipleOptions.vue';
  import DatePickerTableCell from '@/components/page/tableCell/datePicker.vue';
  import RangePickerTableCell from '@/components/page/tableCell/rangePicker.vue';
  import RangeNumberTableCell from '@/components/page/tableCell/rangeNumber.vue';
  import BoolTableCell from '@/components/page/tableCell/bool.vue';
  import TableHeaderCell from '@/components/page/TableHeaderCell.vue';
  import { TreeSelect } from 'ant-design-vue';
  const SHOW_CHILD = TreeSelect.SHOW_CHILD;
  const SHOW_ALL = TreeSelect.SHOW_ALL;
  const SHOW_PARENT = TreeSelect.SHOW_PARENT;

      // 获取传入的流程ID和组件参数
      const props = defineProps({
            'processInstanceId': {
            type: [String,Number,Boolean],
            default: undefined,
        },
      })
      const immediateWatch = (source, callback) => {
        watch(source, callback, {deep: true,immediate: true })
      }



  /* -------------------------- 属性定义 -------------------------- */

      const setTimeOutList = [];
      const pageLoading = reactive({
        loading: false,
        tip: undefined
      });
      const authInfo = localGet('app-user-store');

    const vid_g58dms2vll_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_u3y9135udo_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"custom3":"","custom4":"","custom1":"","custom2":""},
      selectedRowList: {"custom3":"","custom4":"","custom1":"","custom2":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":true,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":true,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":false,"rowKey":"id"}},
      columnList: [
          {
            id: 'r0swjp5l0n',
            dataIndex: 'custom1',
            headerComment: false,
            title: '任务参与人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '59qi0m0a6v',
            dataIndex: 'custom2',
            headerComment: false,
            title: '预计投入工时',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'k9lkp7irsl',
            dataIndex: 'custom3',
            headerComment: false,
            title: '实际投入工时',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '0vsrn24qe7',
            dataIndex: 'custom4',
            headerComment: false,
            title: '工时投入状态',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_2yyk1fkj9d_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_nc1m9qv5qh_props = reactive({
          formModel: {"k_l6k3h83clt":""},
  })

    const vid_hliu1bi8cg_props = reactive({
          showTime: undefined,
      value: "",
  })

    const vid_9f1tbhl4h8_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_j5qyf54gv6_props = reactive({
          formModel: {"d_iy2fgs0wih":"","y_vjlky54sp8":"","d_o1ru1mehtf":"","u_n1sphyrteu":"","k_x1yzt3s459":"","v_9cashjmttj":"","q_zcd868wwhx":"","a_g3q11ormum":"","h_607ei7vdj0":"","b_wfzwbsmtcc":"","b_8p43whz7fu":""},
  })

    const vid_38e3vd3jol_props = reactive({
          dataSource: [{"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]}],
      current: {"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]},
      currentIndex: -1,
  })

    const vid_sth9745oox_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_sjijnlj9z7_props = reactive({
          value: undefined,
  })

    const vid_oecxkhj717_props = reactive({
          value: "",
  })

    const vid_op95sd13gl_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_e27mgsvvcx_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_2rjaiz6tyo_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_cxpi0cr22n_props = reactive({
          value: undefined,
  })

    const vid_bli3y5dska_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_jljbkfk7m8_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_jhmsp1omgn_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_n5ise5idfj_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_6u802x5119_props = reactive({
          formModel: {"a_uvg8rfrpnh":"","o_rfhv331ort":"","i_urdavmm7ud":"","b_snwd70u8e7":"","u_6ozbwpi6ea":"","j_lqv494zlku":"","v_cwsj2nxqg4":"","o_987ni38wqu":"","r_lypj4zjra0":""},
  })

    const vid_r0f4o2vg7s_props = reactive({
          dataSource: [{"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]}],
      current: {"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]},
      currentIndex: -1,
  })

    const vid_1dy1lfxsna_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_dln9aw4fq9_props = reactive({
          value: undefined,
  })

    const vid_580yju0fcm_props = reactive({
          value: "",
  })

    const vid_f924yn9zv0_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_gh5ffic1bz_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_x4abimxw27_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_s91z0jrn6n_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_qqjroo8awh_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_wndxo7pi3s_props = reactive({
          value: undefined,
  })

    const vid_safmodqqf6_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_yy597s5r1k_props = reactive({
          formModel: {"z_ibu7wjz98a":"","m_cp5zmq6rab":"","v_ioqiitlt4g":""},
  })

    const vid_l3r78hpqms_props = reactive({
          dataSource: [{"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]}],
      current: {"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]},
      currentIndex: -1,
  })

    const vid_c4n58t0fbv_props = reactive({
          value: "",
  })

    const vid_pyppcfqy0i_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_e0t85q05o4_props = reactive({
          value: "",
  })

    const vid_kayafdcysa_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_j1gz4cdo9y_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"custom3":"","custom4":"","custom1":"","custom2":"","custom5":""},
      selectedRowList: {"custom3":"","custom4":"","custom1":"","custom2":"","custom5":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":true,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":true,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":false,"rowKey":"id"}},
      columnList: [
          {
            id: 'mc5le8osd6',
            dataIndex: 'custom1',
            headerComment: false,
            title: '变更内容',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '0nc0l9y6r1',
            dataIndex: 'custom2',
            headerComment: false,
            title: '变更日期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '0zw15qxx7v',
            dataIndex: 'custom3',
            headerComment: false,
            title: '变更操作人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '4nf2bub8de',
            dataIndex: 'custom4',
            headerComment: false,
            title: '当前审批人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '141q7rqtq1',
            dataIndex: 'custom5',
            headerComment: false,
            title: '变更状态',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_ui8qtu2f2h_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_5rm2qtfkt8_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_lyqnvc72no_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_nr65qywuao_props = reactive({
          activeKey: "Tab1",
  })

    const vid_1e93e4wxa1_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"checkEntry":""},
      selectedRowList: {"checkEntry":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":false,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":false,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_1e93e4wxa1_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ryrcswvkim',
            dataIndex: 'checkEntry',
            headerComment: false,
            title: '检查项内容描述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_bl8zxuphn2_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"checkEntry":""},
      selectedRowList: {"checkEntry":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":false,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":false,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_bl8zxuphn2_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ryrcswvkim',
            dataIndex: 'checkEntry',
            headerComment: false,
            title: '检查项内容描述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_q4iurfb43l_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"checkEntry":""},
      selectedRowList: {"checkEntry":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":false,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":false,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":false},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_q4iurfb43l_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ryrcswvkim',
            dataIndex: 'checkEntry',
            headerComment: false,
            title: '检查项内容描述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_qequdcdegn_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"checkEntry":""},
      selectedRowList: {"checkEntry":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":false,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":false,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":false},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_qequdcdegn_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ryrcswvkim',
            dataIndex: 'checkEntry',
            headerComment: false,
            title: '检查项内容描述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_jnyid3041z_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"checkEntry":""},
      selectedRowList: {"checkEntry":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":false,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":false,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_jnyid3041z_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ryrcswvkim',
            dataIndex: 'checkEntry',
            headerComment: false,
            title: '检查项内容描述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_8s72c1zxsf_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"checkEntry":""},
      selectedRowList: {"checkEntry":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":false,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":false,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_8s72c1zxsf_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ryrcswvkim',
            dataIndex: 'checkEntry',
            headerComment: false,
            title: '检查项内容描述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_rks1qpqlib_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"checkEntry":""},
      selectedRowList: {"checkEntry":""},
      totalNumber: "",
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":false,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":false,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_rks1qpqlib_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ryrcswvkim',
            dataIndex: 'checkEntry',
            headerComment: false,
            title: '检查项内容描述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_jlz2iy5yjj_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_om6xs2pbh0_props = reactive({
          formModel: {"x_1oip5ccego":"","m_k4ow5t0omu":"","j_lige3x5b0t":"","f_7ny0r7ef71":"","h_s027ysw3aj":"","o_pjua39nomn":"","j_e9w8kkqr89":"","b_wjbmf9j6d3":"","c_01ih17214x":"","k_iisg9mfvgc":"","departmentName":"","n_ql9ww71lqh":"","d_kf78mkndbe":"","p_q2yk2wqav6":"","y_x1ef8en41h":"","y_yphdlrbmny":[],"creatEnclosure":[],"l_h1y4n5dqrl":""},
  })

    const vid_h9sbr1zj83_props = reactive({
          value: "",
  })

    const vid_1e02teh5vo_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      showCheckedStrategy: undefined,
      value: undefined,
  })

    const vid_qwepqm38xj_props = reactive({
          value: "",
  })

    const vid_368wohb2yt_props = reactive({
          value: "",
  })

    const vid_gbyq110evo_props = reactive({
          value: "",
  })

    const vid_8ggecxpznd_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_s19eb77uma_props = reactive({
          showTime: undefined,
      value: "",
  })

    const vid_bfjobeu4bo_props = reactive({
          value: "",
  })

    const vid_wy9y2nfvpy_props = reactive({
          showTime: undefined,
      value: "",
  })

    const vid_nn7q3zj5qd_props = reactive({
          showTime: undefined,
      value: "",
  })

    const vid_wq2zxrypxm_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      showCheckedStrategy: undefined,
      value: "",
  })

    const vid_euf3ywxtbl_props = reactive({
          showTime: undefined,
      value: "",
  })

    const vid_4ep7x2c07v_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_5ckqr8oxpq_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_wvtox7jkqe_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_hyw8pv81og_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: [],
  })

    const vid_o2cy21an92_props = reactive({
          uploadFile: (data) => request({
            url: vid_o2cy21an92_props.action ?? '',
            method: vid_o2cy21an92_props.method,
            responseType:'blob',
            withCredentials: vid_o2cy21an92_props.withCredentials,
            data,
            timeout: 360000,
            headers: {},
          }),
      errorMsg: undefined,
      fileList: [],
      withCredentials: false,
      action: "/file-storage/api/v1/file/upload",
      method: "POST",
  })

    const vid_l38xzzg6dc_props = reactive({
          value: "",
  })

    const vid_hkf53ba1mm_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_iazs2oy50w_props = reactive({
          formModel: {"v_pef30hiy2p":"","l_xivbuqh2nr":"","f_zrlkqb6rbh":"","x_iyo4gqzs4s":"","e_kka7gatmrf":"","j_cory7m4cki":"","n_wo99z2x7u3":"","s_90q4pxtsdn":"","c_paxeg92moe":"","z_yov8nipnbo":"","departmentName":"","k_ogej9eytbu":"","k_12cajpmxf1":"","t_209sj57mko":"","a_bmp3qioph4":"","k_qz1ske7f6t":"","p_1b5gmxlvs7":[],"b_5dur7n82nh":""},
  })

    const vid_nyryuu14uk_props = reactive({
          value: undefined,
  })

    const vid_zkvqhsm3md_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      showCheckedStrategy: undefined,
      value: undefined,
  })

    const vid_dxgc1sm1o6_props = reactive({
          value: undefined,
  })

    const vid_bys2n8ty35_props = reactive({
          value: undefined,
  })

    const vid_3l3yrsbye7_props = reactive({
          value: undefined,
  })

    const vid_e3jxf416hx_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_a9fonyqqx4_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_thqd5koc29_props = reactive({
          value: undefined,
  })

    const vid_5y8ochqm2l_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_aokvitshm5_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_lwrjgnl5hk_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      showCheckedStrategy: undefined,
      value: undefined,
  })

    const vid_5q1g3fyl1w_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_a8y8q0rvsj_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_p459smma70_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_yibvw5rcmz_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_zt2wam5umw_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_akpq5tpjch_props = reactive({
          uploadFile: (data) => request({
            url: vid_akpq5tpjch_props.action ?? '',
            method: vid_akpq5tpjch_props.method,
            responseType:'blob',
            withCredentials: vid_akpq5tpjch_props.withCredentials,
            data,
            timeout: 360000,
            headers: {},
          }),
      errorMsg: undefined,
      fileList: [],
      withCredentials: false,
      action: "/file-storage/api/v1/file/upload",
      method: "POST",
  })

    const vid_71a9kgjal6_props = reactive({
          value: undefined,
  })

    const vid_afcizir8di_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_9crzoz0cys_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_emxoj1ks3o_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_ujuoy3urqm_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_ptqzr22zsl_props = reactive({
          formModel: {"v_hynrohj8rz":"","taskDependencyArray":"","taskName":"","taskParticipantArray":"","taskOwner":"","endTime":"","startTime":"","workingHours":"","taskBudget":"","taskStatus":"","g_ez8doivjoy":"","x_xtbh5m2572":"","t_qkz3lpi7yi":"","x_hr145u2ydk":""},
  })

    const vid_10nqlbbc7q_props = reactive({
          dataSource: [{"projectPhaseName":"","taskOwner":"","milepostStartTime":"","description":"","milepostEndTime":"","milestoneState":"","delFlag":-1,"stateInput":"","projectPhaseId":-1,"taskParticipant":"","milepostTaskQuantity":-1,"startTime":"","workingHours":-1,"taskStatus":"","milepostName":"","milepostId":-1,"taskParticipantArray":[{}],"createTime":"","taskNotFinishedQuantity":-1,"taskDependency":"","taskName":"","endTime":"","taskBudget":-1,"projectId":-1,"milepostPeriod":"","taskId":-1,"taskDependencyArray":[{}]}],
      current: {"projectPhaseName":"","taskOwner":"","milepostStartTime":"","description":"","milepostEndTime":"","milestoneState":"","delFlag":-1,"stateInput":"","projectPhaseId":-1,"taskParticipant":"","milepostTaskQuantity":-1,"startTime":"","workingHours":-1,"taskStatus":"","milepostName":"","milepostId":-1,"taskParticipantArray":[{}],"createTime":"","taskNotFinishedQuantity":-1,"taskDependency":"","taskName":"","endTime":"","taskBudget":-1,"projectId":-1,"milepostPeriod":"","taskId":-1,"taskDependencyArray":[{}]},
      currentIndex: -1,
  })

    const vid_rwmvgn46dt_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_wfrvoo9out_props = reactive({
          value: undefined,
  })

    const vid_727os2vxmi_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_q7deknz720_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_0xb6ud68fm_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_sx8k6cpo4v_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_16jeh6qdek_props = reactive({
          value: undefined,
  })

    const vid_mz34hgwmdn_props = reactive({
          value: undefined,
  })

    const vid_aws7k3cemp_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_fohzbc2627_props = reactive({
          value: undefined,
  })

    const vid_qxvydd7fbv_props = reactive({
          value: undefined,
  })

    const vid_68rzqstn2n_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_5tjhl64f1p_props = reactive({
          value: "",
  })

    const vid_74nuuvmbbh_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_2s3pd49wqk_props = reactive({
          formModel: {"r_7p98nd8hab":"","taskDependencyArray":"","taskName":"","taskParticipantArray":"","taskOwner":"","endTime":"","startTime":"","workingHours":"","taskBudget":"","v_4nyyn0t5jv":"","r_6wrm1hwvjl":"","j_mi90y3a50l":""},
  })

    const vid_y072heuac7_props = reactive({
          dataSource: [{"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]}],
      current: {"taskOwner":"","taskName":"","startTime":"","taskParticipantArray":[],"endTime":"","taskBudget":"","workingHours":"","taskDependencyArray":[]},
      currentIndex: -1,
  })

    const vid_zcxsmd50is_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_9mdtz82ehs_props = reactive({
          value: undefined,
  })

    const vid_ec0kwncf8s_props = reactive({
          selected: {"label":[],"value":[],"option":[]},
      value: undefined,
  })

    const vid_wpwf9x791a_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_nq30nmdljj_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_zi10to2e7d_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_3eofdh9j7t_props = reactive({
          value: undefined,
  })

    const vid_wlfkx3ma4p_props = reactive({
          value: undefined,
  })

    const vid_jmvm1teiu3_props = reactive({
          value: "",
  })

    const vid_q7zaft0bac_props = reactive({
          value: "",
  })

    const vid_qvb0z2tr72_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_1o6x5h66j0_props = reactive({
          formModel: {},
  })

    const vid_dwanramzuy_props = reactive({
          rt_text: undefined,
  })

    const vid_1xsrpamsgz_props = reactive({
          rt_text: undefined,
  })

    const vid_d5do19ir4k_props = reactive({
          rt_text: undefined,
  })

    const vid_x7g6b1e0w2_props = reactive({
          rt_text: undefined,
  })

    const vid_6hh0wbrs1i_props = reactive({
          rt_text: undefined,
  })

    const vid_mirym7gnna_props = reactive({
          rt_text: undefined,
  })

    const vid_fm2ojahzgz_props = reactive({
          rt_text: undefined,
  })

    const vid_1lu28x6kdb_props = reactive({
          rt_text: undefined,
  })

    const vid_3lumos8it3_props = reactive({
          rt_text: undefined,
  })

    const vid_sc3fyx5qzu_props = reactive({
          rt_text: undefined,
  })

    const vid_9o1tjwfo9e_props = reactive({
          rt_text: undefined,
  })

    const vid_9m6jfd6fc1_props = reactive({
          rt_text: undefined,
  })

    const vid_0u6kt0pqgq_props = reactive({
          rt_text: undefined,
  })

    const vid_eijpgq36zy_props = reactive({
          rt_text: undefined,
  })

    const vid_i7d5ckxt5t_props = reactive({
          rt_text: undefined,
  })

    const vid_ntnyvkkrrf_props = reactive({
          rt_text: undefined,
  })

    const vid_c8uu7nyyk4_props = reactive({
          rt_text: undefined,
  })

    const vid_ibrandtx3p_props = reactive({
          activeKey: "Tab1",
  })

    const vid_lws3y9xg07_props = reactive({
          rt_text: undefined,
  })

    const vid_c23z2h41bs_props = reactive({
          rt_text: undefined,
  })

    const vid_thmizi8his_props = reactive({
          rt_text: undefined,
  })

    const vid_h4ydkfxkhj_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"taskOwner":"","taskParticipant":"","milepostName":"","taskName":"","startTime":"","actualWorkingHours":"","endTime":"","taskBudget":"","workingHours":"","milepostPeriod":""},
      selectedRowList: {"taskOwner":"","taskParticipant":"","milepostName":"","taskName":"","startTime":"","actualWorkingHours":"","endTime":"","taskBudget":"","workingHours":"","milepostPeriod":""},
      totalNumber: undefined,
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":true,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":true,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#ebebeb","enableContentStyle":false,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#FFFFFF","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#595959"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#ebebeb","backgroundColor":"#f5f5f5","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":false,"textColor":"#262626"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":false,"rowKey":"id"}},
      columnList: [
          {
            id: 'gsv2aagt38',
            dataIndex: 'milepostPeriod',
            headerComment: false,
            title: '里程碑周期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '4vug5q8hwl',
            dataIndex: 'milepostName',
            headerComment: false,
            title: '里程碑名称',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'q3fr30hjwa',
            dataIndex: 'taskName',
            headerComment: false,
            title: '任务名称',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'fuz30ztw7p',
            dataIndex: 'taskOwner',
            headerComment: false,
            title: '任务负责人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'xzgh0q5ik7',
            dataIndex: 'taskParticipant',
            headerComment: false,
            title: '任务参与人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'fu7vi32ki2',
            dataIndex: 'startTime',
            headerComment: false,
            title: '任务开始时间',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '33ekpdmwmg',
            dataIndex: 'endTime',
            headerComment: false,
            title: '任务结束时间',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '6yjajnhnsr',
            dataIndex: 'taskBudget',
            headerComment: false,
            title: '任务预算',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'kayz9c87tu',
            dataIndex: 'workingHours',
            headerComment: false,
            title: '预计工时',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'nu6tiwjjcn',
            dataIndex: 'actualWorkingHours',
            headerComment: false,
            title: '实际工时',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },

        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [
        { order: 'milepostPeriod', direction: 'ASC' },
  { order: 'milepostName', direction: 'ASC' },
      ],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [
        { order: 'milepostPeriod', direction: 'ASC' },
  { order: 'milepostName', direction: 'ASC' },
      ],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_d10ddmizcp_props = reactive({
          formModel: {"taskStatus":"","taskParticipant":"","taskOwner":"","milepostName":"","endTime":"","stateInput":""},
  })

    const vid_tfdys2yv27_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_qz4a31s4ec_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: "",
  })

    const vid_dc6qyecxin_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: undefined,
  })

    const vid_lejnr9eg5j_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: "",
  })

    const vid_55422xa0a6_props = reactive({
          showTime: undefined,
      value: "",
  })

    const vid_nl8vhqj1u2_props = reactive({
          selected: {"label":"","value":"","option":{}},
      searchValue: undefined,
      value: "",
  })

    const vid_r8t02dukyy_props = reactive({
          activeKey: "Tab1",
  })

    const vid_xrk0mz30yy_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"milepostPeriod":"","taskName":"","milepostName":"","taskDependency":"","taskOwner":"","taskParticipant":"","startTime":"","endTime":"","taskStatus":"","stateInput":"","milepostStartTime":"","milepostEndTime":"","taskId":""},
      selectedRowList: {"taskOwner":[],"milepostStartTime":[],"milepostName":[],"milepostEndTime":[],"stateInput":[],"taskParticipant":[],"taskDependency":[],"taskName":[],"startTime":[],"endTime":[],"milepostPeriod":[],"taskStatus":[],"taskId":[]},
      totalNumber: undefined,
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":true,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":true,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#EBEBEB","enableContentStyle":true,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#F8FAFC","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#262626"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#EBEBEB","backgroundColor":"#3875FF","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":true,"textColor":"#FFFFFF"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":false,"rowKey":"id"}},
      columnList: [
          {
            id: 'n4ks97qqyt',
            dataIndex: 'taskName',
            headerComment: false,
            title: '任务名称',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'zs2lqslg4i',
            dataIndex: 'milepostName',
            headerComment: false,
            title: '里程碑名称',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'yoq4y0jd1i',
            dataIndex: 'taskDependency',
            headerComment: false,
            title: '依赖任务',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'q177emppwj',
            dataIndex: 'taskOwner',
            headerComment: false,
            title: '任务负责人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'nn0wgofbdo',
            dataIndex: 'taskParticipant',
            headerComment: false,
            title: '任务参与人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'rcm1ha7497',
            dataIndex: 'startTime',
            headerComment: false,
            title: '任务开始日期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'hrl0zqxs8p',
            dataIndex: 'endTime',
            headerComment: false,
            title: '任务结束日期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '4jg6y3d4xw',
            dataIndex: 'taskStatus',
            headerComment: false,
            title: '任务状态',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'sqbfzwcnsp',
            dataIndex: 'stateInput',
            headerComment: false,
            title: '工时投入状态',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: '5fqnwuf8f8',
            dataIndex: 'milepostStartTime',
            headerComment: false,
            title: '里程碑开始日期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'ml2nrngpdb',
            dataIndex: 'milepostEndTime',
            headerComment: false,
            title: '里程碑结束日期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            dataIndex: 'vid_xrk0mz30yy_operation',
            title: '操作',
          },
        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_ea0vg4m7vo_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"milepostName":"","milepostStartTime":"","milepostEndTime":"","milepostTaskQuantity":"","milestoneState":"","stateInput":"","milepostId":"","taskId":"","projectPhaseId":""},
      selectedRowList: {"projectPhaseId":[],"milepostStartTime":[],"milepostName":[],"milepostTaskQuantity":[],"milepostEndTime":[],"milestoneState":[],"milepostId":[],"taskId":[],"stateInput":[]},
      totalNumber: undefined,
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"default"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":true,"showTotal":false,"hideOnSinglePage":false,"pageSize":10,"simple":false,"sync":true,"showQuickJumper":false,"showSizeChanger":false},"scroll":{"x":"max-content","y":"","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#EBEBEB","enableContentStyle":true,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#F8FAFC","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#262626"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#EBEBEB","backgroundColor":"#3875FF","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":true,"textColor":"#FFFFFF"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":true,"rowKey":"id"}},
      columnList: [
          {
            dataIndex: 'vid_ea0vg4m7vo_serialNumber',
            title: '序号',
            resizable: true,
          },
          {
            id: 'ttqioohbrn',
            dataIndex: 'milepostName',
            headerComment: false,
            title: '里程碑名称',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'y094brgjaw',
            dataIndex: 'milepostStartTime',
            headerComment: false,
            title: '里程碑开始日期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            sorter: (rowA, rowB) => { return  rowA.milepostStartTime - rowB.milepostStartTime },
            resizable: true,
          },
          {
            id: '89lysnlygv',
            dataIndex: 'milepostEndTime',
            headerComment: false,
            title: '里程碑结束日期',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            sorter: (rowA, rowB) => { return  rowA.milepostEndTime - rowB.milepostEndTime },
            resizable: true,
          },
          {
            id: 'rw2dfxpq3m',
            dataIndex: 'milepostTaskQuantity',
            headerComment: false,
            title: '里程碑任务数',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'ljad6s8lmh',
            dataIndex: 'milestoneState',
            headerComment: false,
            title: '里程碑状态',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            id: 'f54sqkqsz9',
            dataIndex: 'stateInput',
            headerComment: false,
            title: '工时投入状态',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"conditionStyle":[],"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            resizable: true,
          },
          {
            dataIndex: 'vid_ea0vg4m7vo_operation',
            title: '操作',
          },
        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_zk4h5g3q5i_props = reactive({
          value: "",
  })

    const vid_ucdhgbwfk3_props = reactive({
          value: undefined,
  })

    const vid_rzym3dfyuw_props = reactive({
          lazyParams: undefined,
      selected: {"singleValue":"","title":[],"value":[],"option":[],"singleLabel":""},
      clickNode: {"nodeTitle":"","nodeKey":"","nodeParentKey":""},
      checkedKeys: [],
      selectedKeys: [],
      expandedKeys: [],
  })
  // ---------------------------- 定义模型数据 ----------------------------

    const v_6kxszeg3gz = reactive({"k_l6k3h83clt":""})


    const b_9uarvtwtzo = reactive({"h_607ei7vdj0":[{"k_x1yzt3s459":""}]})


    const c_55lo4f7tu7 = reactive({"n_bmq1shn9d4":[{"i_urdavmm7ud":""}]})


    const p_k07jx5bocd = reactive({"n_e4r9hhbo6q":[{"v_ioqiitlt4g":"","z_ibu7wjz98a":""}]})


    const n_46v5crtmxg = reactive({"x_1oip5ccego":"","j_lige3x5b0t":"","f_7ny0r7ef71":"","h_s027ysw3aj":"","j_e9w8kkqr89":"","b_wjbmf9j6d3":"","c_01ih17214x":"","k_iisg9mfvgc":"","departmentName":"","n_ql9ww71lqh":"","y_yphdlrbmny":[],"creatEnclosure":[],"l_h1y4n5dqrl":""})


    const k_y80wm4oz2j = reactive({"p_1b5gmxlvs7":[]})


    const a_3lhu5f974z = reactive({"v_hynrohj8rz":[{}],"x_hr145u2ydk":""})


    const v_30blfqiwu1 = reactive({"r_7p98nd8hab":[{}],"v_4nyyn0t5jv":"","r_6wrm1hwvjl":""})


    const q_lcu9awji3l = reactive({})


    const g_d3kpj6k5e2 = reactive({"taskParticipant":"","milepostName":"","endTime":"","stateInput":""})

    // ============================ 定义模型数据 ============================


    const v_6kxszeg3gz_rules = reactive({

    })










    const b_9uarvtwtzo_rules = reactive({


      d_iy2fgs0wih: [
          { required: true, message: '请输入任务名称!', trigger: 'blur' },
      ],
      k_x1yzt3s459: [
          { required: true, message: '请输入任务预算!', trigger: 'blur' },
      ],
      v_9cashjmttj: [
          { required: true, message: '请选择任务负责人!', trigger: 'blur' },
      ],
      q_zcd868wwhx: [
          { required: true, message: '请选择任务结束时间!', trigger: 'blur' },
      ],
      b_wfzwbsmtcc: [
          { required: true, message: '请选择任务开始时间!', trigger: 'blur' },
      ],
      d_o1ru1mehtf: [
          { required: true, message: '请输入预计投入工时!', trigger: 'blur' },
      ],

      u_n1sphyrteu: [
          { required: true, message: '请选择关联项目阶段!', trigger: 'blur' },
      ],
      a_g3q11ormum: [
          { required: true, message: '请选择里程碑名称!', trigger: 'blur' },
      ],
    })









    const c_55lo4f7tu7_rules = reactive({

      o_rfhv331ort: [
          { required: true, message: '请选择任务名称!', trigger: 'blur' },
      ],

      b_snwd70u8e7: [
          { required: true, message: '请选择任务负责人!', trigger: 'blur' },
      ],
      u_6ozbwpi6ea: [
          { required: true, message: '请选择任务结束时间!', trigger: 'blur' },
      ],
      j_lqv494zlku: [
          { required: true, message: '请选择任务开始时间!', trigger: 'blur' },
      ],
      v_cwsj2nxqg4: [
          { required: true, message: '请选择任务参与人!', trigger: 'blur' },
      ],
      o_987ni38wqu: [
          { required: true, message: '请选择任务状态!', trigger: 'blur' },
      ],
      r_lypj4zjra0: [
          { required: true, message: '请输入预计投入工时!', trigger: 'blur' },
      ],
    })





    const p_k07jx5bocd_rules = reactive({
          v_ioqiitlt4g: [
          { required: true, message: '请选择关联项目阶段!', trigger: 'blur' },
      ],
      m_cp5zmq6rab: [
          { required: true, message: '请选择关联项目阶段!', trigger: 'blur' },
      ],
      z_ibu7wjz98a: [
          { required: true, message: '里程碑名称!', trigger: 'blur' },
      ],
    })
















    const n_46v5crtmxg_rules = reactive({
          x_1oip5ccego: [
          { required: true, message: '请输入项目名称!', trigger: 'blur' },
      ],
      m_k4ow5t0omu: [
          { required: true, message: '请选择项目关联菜单!', trigger: 'blur' },
      ],
      j_lige3x5b0t: [
          { required: true, message: '请输入项目代号!', trigger: 'blur' },
      ],
      f_7ny0r7ef71: [
          { required: true, message: '请输入售前编码!', trigger: 'blur' },
      ],

      o_pjua39nomn: [
          { required: true, message: '请选择项目类型!', trigger: 'blur' },
      ],
      j_e9w8kkqr89: [
          { required: true, message: '请选择项目开始时间!', trigger: 'blur' },
      ],

      c_01ih17214x: [
          { required: true, message: '请选择项目验收时间!', trigger: 'blur' },
      ],
      k_iisg9mfvgc: [
          { required: true, message: '请选择项目上线时间!', trigger: 'blur' },
      ],
      departmentName: [
          { required: true, message: '请选择申请人所在部门!', trigger: 'blur' },
      ],
      n_ql9ww71lqh: [
          { required: true, message: '请选择项目结束时间!', trigger: 'blur' },
      ],
      d_kf78mkndbe: [
          { required: true, message: '请选择项目负责人!', trigger: 'blur' },
      ],
      p_q2yk2wqav6: [
          { required: true, message: '请选择项目经理!', trigger: 'blur' },
      ],

      y_yphdlrbmny: [
          { required: true, message: '请选择营销人员!', trigger: 'blur' },
      ],

      l_h1y4n5dqrl: [
          { required: true, message: '请输入项目描述!', trigger: 'blur' },
      ],
    })

















    const k_y80wm4oz2j_rules = reactive({
          v_pef30hiy2p: [
          { required: true, message: '请输入项目名称!', trigger: 'blur' },
      ],
      l_xivbuqh2nr: [
          { required: true, message: '请选择项目关联菜单!', trigger: 'blur' },
      ],
      f_zrlkqb6rbh: [
          { required: true, message: '请输入项目代号!', trigger: 'blur' },
      ],
      x_iyo4gqzs4s: [
          { required: true, message: '请输入售前编码!', trigger: 'blur' },
      ],

      j_cory7m4cki: [
          { required: true, message: '请选择项目类型!', trigger: 'blur' },
      ],
      n_wo99z2x7u3: [
          { required: true, message: '请选择项目开始时间!', trigger: 'blur' },
      ],

      c_paxeg92moe: [
          { required: true, message: '请选择项目验收时间!', trigger: 'blur' },
      ],
      z_yov8nipnbo: [
          { required: true, message: '请选择项目上线时间!', trigger: 'blur' },
      ],
      departmentName: [
          { required: true, message: '请选择申请人所在部门!', trigger: 'blur' },
      ],
      k_ogej9eytbu: [
          { required: true, message: '请选择项目结束时间!', trigger: 'blur' },
      ],
      k_12cajpmxf1: [
          { required: true, message: '请选择项目负责人!', trigger: 'blur' },
      ],
      t_209sj57mko: [
          { required: true, message: '请选择项目经理!', trigger: 'blur' },
      ],
      a_bmp3qioph4: [
          { required: true, message: '请选择项目干系人!', trigger: 'blur' },
      ],
      k_qz1ske7f6t: [
          { required: true, message: '请选择营销人员!', trigger: 'blur' },
      ],

      b_5dur7n82nh: [
          { required: true, message: '请输入项目描述!', trigger: 'blur' },
      ],
    })











    const a_3lhu5f974z_rules = reactive({


      taskName: [
          { required: true, message: '任务名称!', trigger: 'blur' },
      ],
      taskParticipantArray: [
          { required: true, message: '请选择任务参与人!', trigger: 'blur' },
      ],
      taskOwner: [
          { required: true, message: '请选择任务负责人!', trigger: 'blur' },
      ],
      endTime: [
          { required: true, message: '请选择任务结束时间!', trigger: 'blur' },
      ],
      startTime: [
          { required: true, message: '请选择任务开始时间!', trigger: 'blur' },
      ],
      workingHours: [
          { required: true, message: '请选择预计投入工时!', trigger: 'blur' },
      ],

      taskStatus: [
          { required: true, message: '请选择任务状态!', trigger: 'blur' },
      ],
      x_xtbh5m2572: [
          { required: true, message: '请选择里程碑名称!', trigger: 'blur' },
      ],
      t_qkz3lpi7yi: [
          { required: true, message: '请选择关联项目阶段!', trigger: 'blur' },
      ],

    })










    const v_30blfqiwu1_rules = reactive({


      taskName: [
          { required: true, message: '请选择任务名称!', trigger: 'blur' },
      ],
      taskParticipantArray: [
          { required: true, message: '请选择任务参与人!', trigger: 'blur' },
      ],
      taskOwner: [
          { required: true, message: '请选择任务负责人!', trigger: 'blur' },
      ],
      endTime: [
          { required: true, message: '请选择任务结束时间!', trigger: 'blur' },
      ],
      startTime: [
          { required: true, message: '请选择任务开始时间!', trigger: 'blur' },
      ],
      workingHours: [
          { required: true, message: '请选择预计投入工时!', trigger: 'blur' },
      ],


      r_6wrm1hwvjl: [
          { required: true, message: '里程碑名称!', trigger: 'blur' },
      ],
      j_mi90y3a50l: [
          { required: true, message: '请选择关联项目阶段!', trigger: 'blur' },
      ],
    })



    const q_lcu9awji3l_rules = reactive({

    })



    const g_d3kpj6k5e2_rules = reactive({






    })


      // 处理校验
      const setSubFormName =(parentInfo, name)=>{
        return [parentInfo.parents, parentInfo.cycleIndex, name];
      }


    const vid_u3y9135udo_options_raw = ref([{"name":"湖北省","id":"420000"},{"name":"武汉市","pid":"420000","id":"420100"},{"name":"十堰市","pid":"420000","id":"420300"},{"name":"汉阳区","pid":"420100","id":"420105"},{"name":"武昌区","pid":"420100","id":"420106"},{"name":"青山区","pid":"420100","id":"420107"},{"name":"茅箭区","pid":"420300","id":"420302"},{"name":"张湾区","pid":"420300","id":"420303"}])

      const vid_u3y9135udo_options = computed(() => {
        return () => vid_u3y9135udo_options_raw.value
      })



    const vid_sth9745oox_options_raw = ref([])

      const vid_sth9745oox_options = computed(() => {
        return (dataSource = vid_sth9745oox_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.taskName,
          disabled: !!item.disabled,
          label: item.taskName
            }
          })
        }
      })



    const vid_op95sd13gl_options_raw = ref([])

      const vid_op95sd13gl_options = computed(() => {
        return (dataSource = vid_op95sd13gl_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_bli3y5dska_options_raw = ref([{"label":"option1","value":"1"},{"label":"option2","value":"2"}])

      const vid_bli3y5dska_options = computed(() => {
            return () => vid_bli3y5dska_options_raw.value
          })



    const vid_jljbkfk7m8_options_raw = ref([])

      const vid_jljbkfk7m8_options = computed(() => {
        return (dataSource = vid_jljbkfk7m8_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.projectPhaseId,
          disabled: !!item.disabled,
          label: item.projectPhaseName
            }
          })
        }
      })



    const vid_jhmsp1omgn_options_raw = ref([{"label":"option1","value":"1"},{"label":"option2","value":"2"}])

      const vid_jhmsp1omgn_options = computed(() => {
            return () => vid_jhmsp1omgn_options_raw.value
          })



    const vid_1dy1lfxsna_options_raw = ref([])

      const vid_1dy1lfxsna_options = computed(() => {
        return (dataSource = vid_1dy1lfxsna_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.taskName,
          disabled: !!item.disabled,
          label: item.taskName
            }
          })
        }
      })



    const vid_f924yn9zv0_options_raw = ref([])

      const vid_f924yn9zv0_options = computed(() => {
        return (dataSource = vid_f924yn9zv0_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_s91z0jrn6n_options_raw = ref([{"label":"option1","value":"1"},{"label":"option2","value":"2"}])

      const vid_s91z0jrn6n_options = computed(() => {
            return () => vid_s91z0jrn6n_options_raw.value
          })



    const vid_qqjroo8awh_options_raw = ref([{"label":"option1","value":"1"},{"label":"option2","value":"2"}])

      const vid_qqjroo8awh_options = computed(() => {
            return () => vid_qqjroo8awh_options_raw.value
          })



    const vid_pyppcfqy0i_options_raw = ref([])

      const vid_pyppcfqy0i_options = computed(() => {
        return (dataSource = vid_pyppcfqy0i_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.projectPhaseId,
          disabled: !!item.disabled,
          label: item.projectPhaseName
            }
          })
        }
      })



    const vid_j1gz4cdo9y_options_raw = ref([{"name":"湖北省","id":"420000"},{"name":"武汉市","pid":"420000","id":"420100"},{"name":"十堰市","pid":"420000","id":"420300"},{"name":"汉阳区","pid":"420100","id":"420105"},{"name":"武昌区","pid":"420100","id":"420106"},{"name":"青山区","pid":"420100","id":"420107"},{"name":"茅箭区","pid":"420300","id":"420302"},{"name":"张湾区","pid":"420300","id":"420303"}])

      const vid_j1gz4cdo9y_options = computed(() => {
        return () => vid_j1gz4cdo9y_options_raw.value
      })



    const vid_5rm2qtfkt8_options_raw = ref([{"disabled":false,"label":"完成","value":"1"},{"disabled":false,"label":"延期完成","value":"2"}])

      const vid_5rm2qtfkt8_options = computed(() => {
            return () => vid_5rm2qtfkt8_options_raw.value
          })



    const vid_1e93e4wxa1_options_raw = ref([])

      const vid_1e93e4wxa1_options = computed(() => {
        return () => vid_1e93e4wxa1_options_raw.value
      })



    const vid_bl8zxuphn2_options_raw = ref([])

      const vid_bl8zxuphn2_options = computed(() => {
        return () => vid_bl8zxuphn2_options_raw.value
      })



    const vid_q4iurfb43l_options_raw = ref([])

      const vid_q4iurfb43l_options = computed(() => {
        return () => vid_q4iurfb43l_options_raw.value
      })



    const vid_qequdcdegn_options_raw = ref([])

      const vid_qequdcdegn_options = computed(() => {
        return () => vid_qequdcdegn_options_raw.value
      })



    const vid_jnyid3041z_options_raw = ref([])

      const vid_jnyid3041z_options = computed(() => {
        return () => vid_jnyid3041z_options_raw.value
      })



    const vid_8s72c1zxsf_options_raw = ref([])

      const vid_8s72c1zxsf_options = computed(() => {
        return () => vid_8s72c1zxsf_options_raw.value
      })



    const vid_rks1qpqlib_options_raw = ref([])

      const vid_rks1qpqlib_options = computed(() => {
        return () => vid_rks1qpqlib_options_raw.value
      })



    const vid_1e02teh5vo_options_raw = ref([])

      const vid_1e02teh5vo_options = computed(() => {
            return () => vid_1e02teh5vo_options_raw.value
          })



    const vid_8ggecxpznd_options_raw = ref([{"label":"交付","value":"1"},{"label":"产品研发","value":"2"},{"label":"市场","value":"3"},{"label":"内部工程","value":"4"}])

      const vid_8ggecxpznd_options = computed(() => {
            return () => vid_8ggecxpznd_options_raw.value
          })



    const vid_wq2zxrypxm_options_raw = ref([])

      const vid_wq2zxrypxm_options = computed(() => {
            return () => vid_wq2zxrypxm_options_raw.value
          })



    const vid_4ep7x2c07v_options_raw = ref([])

      const vid_4ep7x2c07v_options = computed(() => {
        return (dataSource = vid_4ep7x2c07v_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.id,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_5ckqr8oxpq_options_raw = ref([])

      const vid_5ckqr8oxpq_options = computed(() => {
        return (dataSource = vid_5ckqr8oxpq_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.id,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_wvtox7jkqe_options_raw = ref([])

      const vid_wvtox7jkqe_options = computed(() => {
        return (dataSource = vid_wvtox7jkqe_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.id,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_hyw8pv81og_options_raw = ref([])

      const vid_hyw8pv81og_options = computed(() => {
        return (dataSource = vid_hyw8pv81og_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_zkvqhsm3md_options_raw = ref([])

      const vid_zkvqhsm3md_options = computed(() => {
            return () => vid_zkvqhsm3md_options_raw.value
          })



    const vid_e3jxf416hx_options_raw = ref([{"label":"交付","value":"1"},{"label":"产品研发","value":"2"},{"label":"市场","value":"3"},{"label":"内部工程","value":"4"}])

      const vid_e3jxf416hx_options = computed(() => {
            return () => vid_e3jxf416hx_options_raw.value
          })



    const vid_lwrjgnl5hk_options_raw = ref([])

      const vid_lwrjgnl5hk_options = computed(() => {
            return () => vid_lwrjgnl5hk_options_raw.value
          })



    const vid_a8y8q0rvsj_options_raw = ref([])

      const vid_a8y8q0rvsj_options = computed(() => {
        return (dataSource = vid_a8y8q0rvsj_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.id,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_p459smma70_options_raw = ref([])

      const vid_p459smma70_options = computed(() => {
        return (dataSource = vid_p459smma70_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.id,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_yibvw5rcmz_options_raw = ref([])

      const vid_yibvw5rcmz_options = computed(() => {
        return (dataSource = vid_yibvw5rcmz_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.id,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_zt2wam5umw_options_raw = ref([])

      const vid_zt2wam5umw_options = computed(() => {
        return (dataSource = vid_zt2wam5umw_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_rwmvgn46dt_options_raw = ref([])

      const vid_rwmvgn46dt_options = computed(() => {
        return (dataSource = vid_rwmvgn46dt_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.taskName,
          disabled: !!item.disabled,
          label: item.taskName
            }
          })
        }
      })



    const vid_727os2vxmi_options_raw = ref([])

      const vid_727os2vxmi_options = computed(() => {
        return (dataSource = vid_727os2vxmi_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_q7deknz720_options_raw = ref([])

      const vid_q7deknz720_options = computed(() => {
        return (dataSource = vid_q7deknz720_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_aws7k3cemp_options_raw = ref([{"label":"未启动","value":"未启动"},{"label":"进行中","value":"进行中"},{"label":"完成","value":"完成"},{"label":"延期","value":"延期"},{"label":"延期完成","value":"延期完成"}])

      const vid_aws7k3cemp_options = computed(() => {
            return () => vid_aws7k3cemp_options_raw.value
          })



    const vid_68rzqstn2n_options_raw = ref([])

      const vid_68rzqstn2n_options = computed(() => {
        return (dataSource = vid_68rzqstn2n_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.projectPhaseId,
          disabled: !!item.disabled,
          label: item.projectPhaseName
            }
          })
        }
      })



    const vid_zcxsmd50is_options_raw = ref([])

      const vid_zcxsmd50is_options = computed(() => {
        return (dataSource = vid_zcxsmd50is_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.taskName,
          disabled: !!item.disabled,
          label: item.taskName
            }
          })
        }
      })



    const vid_ec0kwncf8s_options_raw = ref([])

      const vid_ec0kwncf8s_options = computed(() => {
        return (dataSource = vid_ec0kwncf8s_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_wpwf9x791a_options_raw = ref([])

      const vid_wpwf9x791a_options = computed(() => {
        return (dataSource = vid_wpwf9x791a_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          disabled: !!item.disabled,
          label: item.name
            }
          })
        }
      })



    const vid_qvb0z2tr72_options_raw = ref([])

      const vid_qvb0z2tr72_options = computed(() => {
        return (dataSource = vid_qvb0z2tr72_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.projectPhaseId,
          disabled: !!item.disabled,
          label: item.projectPhaseName
            }
          })
        }
      })



    const vid_h4ydkfxkhj_options_raw = ref([])

      const vid_h4ydkfxkhj_options = computed(() => {
        return () => vid_h4ydkfxkhj_options_raw.value
      })



    const vid_tfdys2yv27_options_raw = ref([{"label":"未启动","value":"1"},{"label":"进行中","value":"2"},{"label":"完成","value":"3"},{"label":"延期","value":"4"},{"label":"延期完成","value":"5"}])

      const vid_tfdys2yv27_options = computed(() => {
            return () => vid_tfdys2yv27_options_raw.value
          })



    const vid_qz4a31s4ec_options_raw = ref([])

      const vid_qz4a31s4ec_options = computed(() => {
        return (dataSource = vid_qz4a31s4ec_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.taskParticipant,
          disabled: !!item.disabled,
          label: item.taskParticipant
            }
          })
        }
      })



    const vid_dc6qyecxin_options_raw = ref([])

      const vid_dc6qyecxin_options = computed(() => {
        return (dataSource = vid_dc6qyecxin_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.taskOwner,
          disabled: !!item.disabled,
          label: item.taskOwner
            }
          })
        }
      })



    const vid_lejnr9eg5j_options_raw = ref([])

      const vid_lejnr9eg5j_options = computed(() => {
        return (dataSource = vid_lejnr9eg5j_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.milepostName,
          disabled: !!item.disabled,
          label: item.milepostName
            }
          })
        }
      })



    const vid_nl8vhqj1u2_options_raw = ref([{"label":"正常","value":"1"},{"label":"超出","value":"2"}])

      const vid_nl8vhqj1u2_options = computed(() => {
            return () => vid_nl8vhqj1u2_options_raw.value
          })



    const vid_xrk0mz30yy_options_raw = ref([])

      const vid_xrk0mz30yy_options = computed(() => {
        return () => vid_xrk0mz30yy_options_raw.value
      })



    const vid_ea0vg4m7vo_options_raw = ref([])

      const vid_ea0vg4m7vo_options = computed(() => {
        return () => vid_ea0vg4m7vo_options_raw.value
      })



    const vid_rzym3dfyuw_options_raw = ref([])

      const vid_rzym3dfyuw_options = computed(() => {
            return () => vid_rzym3dfyuw_options_raw.value
          })

  // 图表组件 表格_oamew7p8wf 条件格式数据依赖
  const vid_u3y9135udo_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉复选框_v330tjc5xu 条件格式数据依赖
  const vid_sth9745oox_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_vsf6v1rdp0 条件格式数据依赖
  const vid_op95sd13gl_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_n1i2b06fw8 条件格式数据依赖
  const vid_bli3y5dska_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_ekk1m8se1u 条件格式数据依赖
  const vid_jljbkfk7m8_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_rjaf5qkatt 条件格式数据依赖
  const vid_jhmsp1omgn_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉复选框_4xejrjwlp1 条件格式数据依赖
  const vid_1dy1lfxsna_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_mqxo6je3zz 条件格式数据依赖
  const vid_f924yn9zv0_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_mi7kizuf73 条件格式数据依赖
  const vid_s91z0jrn6n_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_7bgxvuf47g 条件格式数据依赖
  const vid_qqjroo8awh_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_aadozbqk2v 条件格式数据依赖
  const vid_pyppcfqy0i_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_r2pdwtxtt0 条件格式数据依赖
  const vid_j1gz4cdo9y_chartConditionDependencyMap = ref({
  })
  // 图表组件 完成单选按钮 条件格式数据依赖
  const vid_5rm2qtfkt8_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_k6cg4p2hb7 条件格式数据依赖
  const vid_1e93e4wxa1_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_ictlsqlk6d 条件格式数据依赖
  const vid_bl8zxuphn2_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_6rk7kbvudd 条件格式数据依赖
  const vid_q4iurfb43l_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_rp4lzq74k9 条件格式数据依赖
  const vid_qequdcdegn_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_7d4yt4kmd2 条件格式数据依赖
  const vid_jnyid3041z_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_r52b9scvx4 条件格式数据依赖
  const vid_8s72c1zxsf_chartConditionDependencyMap = ref({
  })
  // 图表组件 表格_4pz1d1fs5f 条件格式数据依赖
  const vid_rks1qpqlib_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉树_veoious634 条件格式数据依赖
  const vid_1e02teh5vo_chartConditionDependencyMap = ref({
  })
  // 图表组件 项目类型-projectType 条件格式数据依赖
  const vid_8ggecxpznd_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉树_departmentName 条件格式数据依赖
  const vid_wq2zxrypxm_chartConditionDependencyMap = ref({
  })
  // 图表组件 项目负责人-plName 条件格式数据依赖
  const vid_4ep7x2c07v_chartConditionDependencyMap = ref({
  })
  // 图表组件 项目经理-pmName 条件格式数据依赖
  const vid_5ckqr8oxpq_chartConditionDependencyMap = ref({
  })
  // 图表组件 新增-项目干系人-projectStakeholders 条件格式数据依赖
  const vid_wvtox7jkqe_chartConditionDependencyMap = ref({
  })
  // 图表组件 新建-营销人员-salerName 条件格式数据依赖
  const vid_hyw8pv81og_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉树_5wfsri9j9r 条件格式数据依赖
  const vid_zkvqhsm3md_chartConditionDependencyMap = ref({
  })
  // 图表组件 编辑项目_项目类型_projectType 条件格式数据依赖
  const vid_e3jxf416hx_chartConditionDependencyMap = ref({
  })
  // 图表组件 编辑下拉树_departmentName 条件格式数据依赖
  const vid_lwrjgnl5hk_chartConditionDependencyMap = ref({
  })
  // 图表组件 编辑项目_项目负责人_plName 条件格式数据依赖
  const vid_a8y8q0rvsj_chartConditionDependencyMap = ref({
  })
  // 图表组件 编辑项目_项目经理_pmName 条件格式数据依赖
  const vid_p459smma70_chartConditionDependencyMap = ref({
  })
  // 图表组件 编辑_项目干系人_projectStakeholders 条件格式数据依赖
  const vid_yibvw5rcmz_chartConditionDependencyMap = ref({
  })
  // 图表组件 编辑-营销人员-salerName 条件格式数据依赖
  const vid_zt2wam5umw_chartConditionDependencyMap = ref({
  })
  // 图表组件 依赖任务_taskDependency 条件格式数据依赖
  const vid_rwmvgn46dt_chartConditionDependencyMap = ref({
  })
  // 图表组件 任务参与人_taskParticipant 条件格式数据依赖
  const vid_727os2vxmi_chartConditionDependencyMap = ref({
  })
  // 图表组件 任务负责人_taskOwner 条件格式数据依赖
  const vid_q7deknz720_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_ljcpu2x8re 条件格式数据依赖
  const vid_aws7k3cemp_chartConditionDependencyMap = ref({
  })
  // 图表组件 项目阶段_projectPhaseId 条件格式数据依赖
  const vid_68rzqstn2n_chartConditionDependencyMap = ref({
  })
  // 图表组件 新建任务依赖_taskDependencyArray 条件格式数据依赖
  const vid_zcxsmd50is_chartConditionDependencyMap = ref({
  })
  // 图表组件 任务参与人_taskParticipant 条件格式数据依赖
  const vid_ec0kwncf8s_chartConditionDependencyMap = ref({
  })
  // 图表组件 任务负责人_taskOwner 条件格式数据依赖
  const vid_wpwf9x791a_chartConditionDependencyMap = ref({
  })
  // 图表组件 项目阶段_projectPhaseId 条件格式数据依赖
  const vid_qvb0z2tr72_chartConditionDependencyMap = ref({
  })
  // 图表组件 资源投入表格 条件格式数据依赖
  const vid_h4ydkfxkhj_chartConditionDependencyMap = ref({
  })
  // 图表组件 筛选任务状态_taskStatus 条件格式数据依赖
  const vid_tfdys2yv27_chartConditionDependencyMap = ref({
  })
  // 图表组件 筛选任务参与人_taskParticipant 条件格式数据依赖
  const vid_qz4a31s4ec_chartConditionDependencyMap = ref({
  })
  // 图表组件 筛选任务负责人_taskOwner 条件格式数据依赖
  const vid_dc6qyecxin_chartConditionDependencyMap = ref({
  })
  // 图表组件 筛选里程碑名称_milepostName 条件格式数据依赖
  const vid_lejnr9eg5j_chartConditionDependencyMap = ref({
  })
  // 图表组件 筛选工时投入状态_stateInput 条件格式数据依赖
  const vid_nl8vhqj1u2_chartConditionDependencyMap = ref({
  })
  // 图表组件 任务表格_xam91fqixu 条件格式数据依赖
  const vid_xrk0mz30yy_chartConditionDependencyMap = ref({
  })
  // 图表组件 里程碑表格_l2aibglp7z 条件格式数据依赖
  const vid_ea0vg4m7vo_chartConditionDependencyMap = ref({
  })
  // 图表组件 项目树形控件 条件格式数据依赖
  const vid_rzym3dfyuw_chartConditionDependencyMap = ref({
  })
  /* ========================== 属性定义 ========================== */


  /* -------------------------- 元素数据引用 -------------------------- */
  // 组件 表单容器_h4avw5u5oa ref 的引用
  const vid_om6xs2pbh0_ref = ref(null);
  // 组件 表单容器_9co2te3rru ref 的引用
  const vid_iazs2oy50w_ref = ref(null);
  // 组件 表单容器_1hboi5y5pn ref 的引用
  const vid_ptqzr22zsl_ref = ref(null);
  // 组件 新建里程碑表单容器 ref 的引用
  const vid_2s3pd49wqk_ref = ref(null);
  // 组件 新建里程碑动作列表 ref 的引用
  const vid_y072heuac7_ref = ref(null);
  // 组件 筛选与表格的表单容器 ref 的引用
  const vid_d10ddmizcp_ref = ref(null);
  const showState = reactive({
      vid_i2ht4ljq1t_visible: true,
      vid_chp28ng6fc_visible: false,
      vid_9351xbiw30_visible: true,
  })
  /* ========================== 元素数据引用 ========================== */


  /* -------------------------- 页面数据 -------------------------- */

    // 页面数据 查询项目下里程碑的任务
    const dataConnector_conn_qvkp7x8evl_response = ref();
    const dataConnector_conn_qvkp7x8evl = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntryId: undefined,
          projectPhaseName: undefined,
          taskOwner: vid_dc6qyecxin_props?.selected.label,
          description: undefined,
          pageSize: vid_xrk0mz30yy_props?.rt_tableConfig.pagination.pageSize,
          delFlag: undefined,
          stateInput: vid_nl8vhqj1u2_props?.selected.label,
          ppmChecklists: undefined,
          ppmMilepostFromList: undefined,
          milepostNameList: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: vid_xrk0mz30yy_props?.rt_tableConfig.pagination.current,
          taskParticipant: vid_qz4a31s4ec_props?.selected.label,
          startTime: undefined,
          workingHours: undefined,
          taskStatus: vid_tfdys2yv27_props?.selected.label,
          checkEntry: undefined,
          milepostName: vid_lejnr9eg5j_props?.selected.label,
          milepostId: undefined,
          createBy: undefined,
          taskDependency: undefined,
          taskName: undefined,
          endTime: g_d3kpj6k5e2.endTime,
          taskBudget: undefined,
          projectId: vid_rzym3dfyuw_props?.selected.singleValue,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/list';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_qvkp7x8evl_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 里程碑名称下拉框
    const dataConnector_conn_mqkpcxcx3u_response = ref();
    const dataConnector_conn_mqkpcxcx3u = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/query/milepost/name/{projectId}';
          // 替换url中的变量
          url = url.replace('{projectId}', String(vid_rzym3dfyuw_props?.selected.singleValue))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_mqkpcxcx3u_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询项目列表
    const dataConnector_conn_gdawclleib_response = ref();
    const dataConnector_conn_gdawclleib = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            salerName: undefined,
          deliveryTime: undefined,
          departmentId: undefined,
          projectType: undefined,
          description: undefined,
          pageSize: vid_xrk0mz30yy_props?.rt_tableConfig.pagination.pageSize,
          delFlag: undefined,
          preSalesCode: undefined,
          plName: undefined,
          attachment: undefined,
          projectCode: undefined,
          updateBy: undefined,
          pageNo: vid_xrk0mz30yy_props?.rt_tableConfig.pagination.current,
          startTime: undefined,
          deliverCode: undefined,
          taskStatus: undefined,
          departmentName: undefined,
          projectNumber: undefined,
          acceptanceTime: undefined,
          updateTime: undefined,
          pmName: undefined,
          createBy: undefined,
          createTime: undefined,
          endTime: undefined,
          projectName: undefined,
          projectId: 1001
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/list';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_gdawclleib_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 树形展示项目信息(72)
    const dataConnector_conn_mpmbzok2b4_response = ref();
    const dataConnector_conn_mpmbzok2b4 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            modifiedTime: undefined,
          salerName: undefined,
          deliveryTime: undefined,
          departmentId: undefined,
          projectType: undefined,
          description: undefined,
          pageSize: undefined,
          delFlag: undefined,
          preSalesCode: undefined,
          plName: undefined,
          projectStakeholders: undefined,
          attachment: undefined,
          projectCode: undefined,
          updateBy: undefined,
          pageNo: undefined,
          createdTime: undefined,
          startTime: undefined,
          deliverCode: undefined,
          taskStatus: undefined,
          departmentName: undefined,
          projectNumber: undefined,
          acceptanceTime: undefined,
          updateTime: undefined,
          pmName: undefined,
          nodeType: undefined,
          parentId: undefined,
          ppmEnclosureInfoList: undefined,
          createBy: undefined,
          createTime: undefined,
          endTime: undefined,
          projectName: vid_ucdhgbwfk3_props?.value,
          salerNames: undefined,
          projectId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/tree/projectList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_mpmbzok2b4_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询项目详情(72)
    const dataConnector_conn_lekr0gf5rr_response = ref();
    const dataConnector_conn_lekr0gf5rr = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/{projectId}';
          // 替换url中的变量
          url = url.replace('{projectId}', String(vid_rzym3dfyuw_props?.selected.singleValue))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_lekr0gf5rr_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 创建项目(72)
    const dataConnector_conn_39gp83wuu0_response = ref();
    const dataConnector_conn_39gp83wuu0 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            modifiedTime: undefined,
          orderType: undefined,
          contractDate: undefined,
          humanCostBudget: undefined,
          workingDays: undefined,
          departmentId: undefined,
          projectType: vid_8ggecxpznd_props?.selected.label,
          pageSize: undefined,
          source: undefined,
          plName: vid_4ep7x2c07v_props?.selected.label,
          projectStakeholders: vid_wvtox7jkqe_props?.selected.value,
          testLeaderName: undefined,
          pageNo: undefined,
          productLeaderName: undefined,
          createdTime: undefined,
          taskStatus: undefined,
          budget: undefined,
          departmentName: vid_wq2zxrypxm_props?.selected.value,
          budgetEnclosureInfo: undefined,
          virtualDeleteIdList: undefined,
          ppmProjectFormList: undefined,
          milepostId: undefined,
          sort: undefined,
          nodeType: undefined,
          ppmEnclosureInfoList: n_46v5crtmxg.creatEnclosure,
          parentName: undefined,
          carbonCopyNameList: undefined,
          virtualRealStatus: undefined,
          realProjectId: undefined,
          operationType: undefined,
          projectName: n_46v5crtmxg.x_1oip5ccego,
          salerNames: undefined,
          projectId: undefined,
          iterativeRisk: undefined,
          deliveryManager: undefined,
          salerName: vid_hyw8pv81og_props?.selected.label,
          deliveryTime: n_46v5crtmxg.k_iisg9mfvgc,
          developLeaderName: undefined,
          description: n_46v5crtmxg.l_h1y4n5dqrl,
          budgetEnclosureInfoList: undefined,
          delFlag: undefined,
          preSalesCode: n_46v5crtmxg.f_7ny0r7ef71,
          projectStatusOnOrOff: undefined,
          instanceId: undefined,
          attachment: '',
          projectCode: n_46v5crtmxg.j_lige3x5b0t,
          updateBy: undefined,
          startTime: n_46v5crtmxg.j_e9w8kkqr89,
          deliverCode: n_46v5crtmxg.b_wjbmf9j6d3,
          commercialEnclosureInfo: undefined,
          directExpenseBudget: undefined,
          projectNumber: n_46v5crtmxg.h_s027ysw3aj,
          acceptanceTime: n_46v5crtmxg.c_01ih17214x,
          updateTime: undefined,
          pmName: vid_5ckqr8oxpq_props?.selected.label,
          preSaleManager: undefined,
          commercialEnclosureInfoList: undefined,
          parentId: n_46v5crtmxg.m_k4ow5t0omu,
          createBy: undefined,
          createTime: undefined,
          iterativeContent: undefined,
          endTime: n_46v5crtmxg.n_ql9ww71lqh,
          projectPriority: undefined,
          orderField: undefined,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/add/project';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_39gp83wuu0_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 按指定条件搜索当前租户用户列表
    const dataConnector_conn_z0pio5iu43_response = ref();
    const dataConnector_conn_z0pio5iu43 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            pageNo: 1,
          pageSize: 100000
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/base/api/v1/user/search/basic';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_z0pio5iu43_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 修改项目(72)
    const dataConnector_conn_vjjk72fyok_response = ref();
    const dataConnector_conn_vjjk72fyok = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            modifiedTime: undefined,
          orderType: undefined,
          contractDate: undefined,
          humanCostBudget: undefined,
          workingDays: undefined,
          departmentId: undefined,
          projectType: vid_e3jxf416hx_props?.selected.label,
          pageSize: undefined,
          source: undefined,
          plName: vid_a8y8q0rvsj_props?.selected.label,
          projectStakeholders: vid_yibvw5rcmz_props?.selected.value,
          testLeaderName: undefined,
          pageNo: undefined,
          productLeaderName: undefined,
          createdTime: undefined,
          taskStatus: undefined,
          budget: undefined,
          departmentName: undefined,
          budgetEnclosureInfo: undefined,
          virtualDeleteIdList: undefined,
          ppmProjectFormList: undefined,
          milepostId: undefined,
          sort: undefined,
          nodeType: undefined,
          ppmEnclosureInfoList: undefined,
          parentName: k_y80wm4oz2j.l_xivbuqh2nr,
          carbonCopyNameList: undefined,
          virtualRealStatus: undefined,
          realProjectId: undefined,
          operationType: undefined,
          projectName: k_y80wm4oz2j.v_pef30hiy2p,
          salerNames: undefined,
          projectId: vid_rzym3dfyuw_props?.selected.singleValue,
          iterativeRisk: undefined,
          deliveryManager: undefined,
          salerName: k_y80wm4oz2j.k_qz1ske7f6t,
          deliveryTime: k_y80wm4oz2j.z_yov8nipnbo,
          developLeaderName: undefined,
          description: k_y80wm4oz2j.b_5dur7n82nh,
          budgetEnclosureInfoList: undefined,
          delFlag: undefined,
          preSalesCode: k_y80wm4oz2j.x_iyo4gqzs4s,
          projectStatusOnOrOff: undefined,
          instanceId: undefined,
          attachment: undefined,
          projectCode: k_y80wm4oz2j.f_zrlkqb6rbh,
          updateBy: undefined,
          startTime: k_y80wm4oz2j.n_wo99z2x7u3,
          deliverCode: k_y80wm4oz2j.s_90q4pxtsdn,
          commercialEnclosureInfo: undefined,
          directExpenseBudget: undefined,
          projectNumber: k_y80wm4oz2j.e_kka7gatmrf,
          acceptanceTime: k_y80wm4oz2j.c_paxeg92moe,
          updateTime: undefined,
          pmName: vid_p459smma70_props?.selected.label,
          preSaleManager: undefined,
          commercialEnclosureInfoList: undefined,
          parentId: undefined,
          createBy: undefined,
          createTime: undefined,
          iterativeContent: undefined,
          endTime: k_y80wm4oz2j.k_ogej9eytbu,
          projectPriority: undefined,
          orderField: undefined,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/edit/project';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_vjjk72fyok_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 编辑项目回显数据(72)
    const dataConnector_conn_7knelg72xf_response = ref();
    const dataConnector_conn_7knelg72xf = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/{projectId}';
          // 替换url中的变量
          url = url.replace('{projectId}', String(vid_rzym3dfyuw_props?.selected.singleValue))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_7knelg72xf_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 申请人所在部门
    const dataConnector_conn_mr9kmlnah5_response = ref();
    const dataConnector_conn_mr9kmlnah5 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            departmentName: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/api/v1/department/all';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_mr9kmlnah5_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 下拉框项目阶段
    const dataConnector_conn_bwclu26iao_response = ref();
    const dataConnector_conn_bwclu26iao = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryProjectPhase';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_bwclu26iao_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询交付部门全部的人员(配置项目经理)
    const dataConnector_conn_2h0xw86105_response = ref();
    const dataConnector_conn_2h0xw86105 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/queryAllDepartments';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_2h0xw86105_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑下交付部检查清单列表
    const dataConnector_conn_9xhw4y5pfn_response = ref();
    const dataConnector_conn_9xhw4y5pfn = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntry: undefined,
          checkEntryId: undefined,
          role: '交付部',
          checkCastingName: undefined,
          projectPhaseName: undefined,
          pageSize: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          delFlag: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          ppmChecklistList: undefined,
          checkCastingId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryPpmMilepostChecklistList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_9xhw4y5pfn_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑下产品部检查清单列表
    const dataConnector_conn_lcug1puwhf_response = ref();
    const dataConnector_conn_lcug1puwhf = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntry: undefined,
          checkEntryId: undefined,
          role: '产品部',
          checkCastingName: undefined,
          projectPhaseName: undefined,
          pageSize: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          delFlag: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          ppmChecklistList: undefined,
          checkCastingId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryPpmMilepostChecklistList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_lcug1puwhf_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑下解决方案检查清单列表
    const dataConnector_conn_ti68ou6lfu_response = ref();
    const dataConnector_conn_ti68ou6lfu = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntry: undefined,
          checkEntryId: undefined,
          role: '解决方案',
          checkCastingName: undefined,
          projectPhaseName: undefined,
          pageSize: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          delFlag: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          ppmChecklistList: undefined,
          checkCastingId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryPpmMilepostChecklistList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_ti68ou6lfu_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑下售前部检查清单列表
    const dataConnector_conn_vr5enw6446_response = ref();
    const dataConnector_conn_vr5enw6446 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntry: undefined,
          checkEntryId: undefined,
          role: '售前部',
          checkCastingName: undefined,
          projectPhaseName: undefined,
          pageSize: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          delFlag: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          ppmChecklistList: undefined,
          checkCastingId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryPpmMilepostChecklistList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_vr5enw6446_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑下销售部检查清单列表
    const dataConnector_conn_q6ztv3obw3_response = ref();
    const dataConnector_conn_q6ztv3obw3 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntry: undefined,
          checkEntryId: undefined,
          role: '销售部',
          checkCastingName: undefined,
          projectPhaseName: undefined,
          pageSize: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          delFlag: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          ppmChecklistList: undefined,
          checkCastingId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryPpmMilepostChecklistList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_q6ztv3obw3_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑下财务部检查清单列表
    const dataConnector_conn_mm1hgy00io_response = ref();
    const dataConnector_conn_mm1hgy00io = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntry: undefined,
          checkEntryId: undefined,
          role: '财务',
          checkCastingName: undefined,
          projectPhaseName: undefined,
          pageSize: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          delFlag: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          ppmChecklistList: undefined,
          checkCastingId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryPpmMilepostChecklistList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_mm1hgy00io_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 创建里程碑信息(72)
    const dataConnector_conn_jucgqqn5p2_response = ref();
    const dataConnector_conn_jucgqqn5p2 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntryId: undefined,
          projectPhaseName: undefined,
          taskOwner: undefined,
          description: undefined,
          pageSize: undefined,
          delFlag: undefined,
          stateInput: undefined,
          ppmChecklists: undefined,
          ppmMilepostFromList: vid_y072heuac7_props?.dataSource,
          milepostNameList: undefined,
          projectPhaseId: vid_qvb0z2tr72_props?.selected.value,
          updateBy: vid_zk4h5g3q5i_props?.value,
          pageNo: undefined,
          taskParticipant: undefined,
          startTime: undefined,
          workingHours: undefined,
          taskStatus: undefined,
          checkEntry: undefined,
          milepostName: v_30blfqiwu1.r_6wrm1hwvjl,
          milepostId: undefined,
          createBy: vid_zk4h5g3q5i_props?.value,
          taskDependency: undefined,
          taskName: undefined,
          endTime: undefined,
          taskBudget: undefined,
          projectId: vid_rzym3dfyuw_props?.selected.singleValue,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/add/milepost';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_jucgqqn5p2_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 任务依赖下拉框
    const dataConnector_conn_qmbd3q3hty_response = ref();
    const dataConnector_conn_qmbd3q3hty = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntryId: undefined,
          projectPhaseName: undefined,
          taskOwner: undefined,
          description: undefined,
          pageSize: undefined,
          delFlag: undefined,
          stateInput: undefined,
          ppmChecklists: undefined,
          ppmMilepostFromList: undefined,
          milepostNameList: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          taskParticipant: undefined,
          startTime: undefined,
          workingHours: undefined,
          taskStatus: undefined,
          checkEntry: undefined,
          milepostName: undefined,
          milepostId: undefined,
          createBy: undefined,
          taskDependency: undefined,
          taskName: v_30blfqiwu1.taskDependencyArray,
          endTime: undefined,
          taskBudget: undefined,
          projectId: undefined,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/task/list';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_qmbd3q3hty_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 删除项目
    const dataConnector_conn_8zblbycnnc_response = ref();
    const dataConnector_conn_8zblbycnnc = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/{projectId}';
          // 替换url中的变量
          url = url.replace('{projectId}', String(vid_rzym3dfyuw_props?.selected.singleValue))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return del(url, {data: params}, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_8zblbycnnc_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 删除里程碑
    const dataConnector_conn_acteakf4vz_response = ref();
    const dataConnector_conn_acteakf4vz = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/{id}';
          // 替换url中的变量
          url = url.replace('{id}', String(vid_ea0vg4m7vo_props?.currentRow.milepostId))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return del(url, {data: params}, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_acteakf4vz_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 删除任务
    const dataConnector_conn_489q99v6wk_response = ref();
    const dataConnector_conn_489q99v6wk = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/task/{id}';
          // 替换url中的变量
          url = url.replace('{id}', String(vid_xrk0mz30yy_props?.currentRow.taskId))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return del(url, {data: params}, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_489q99v6wk_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 修改任务状态（正常完成、延期完成）
    const dataConnector_conn_dze43tmgxi_response = ref();
    const dataConnector_conn_dze43tmgxi = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            taskOwner: undefined,
          milepostId: undefined,
          taskParticipantArray: undefined,
          stateInput: undefined,
          createBy: undefined,
          updateBy: undefined,
          taskParticipant: undefined,
          taskDependency: undefined,
          startTime: undefined,
          taskName: undefined,
          endTime: undefined,
          taskBudget: undefined,
          projectId: undefined,
          workingHours: undefined,
          taskId: vid_xrk0mz30yy_props?.currentRow.taskId,
          taskStatus: vid_5rm2qtfkt8_props?.selected.label,
          taskDependencyArray: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/update/task';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return put(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_dze43tmgxi_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 编辑里程碑信息
    const dataConnector_conn_g59vuud5h1_response = ref();
    const dataConnector_conn_g59vuud5h1 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntryId: undefined,
          projectPhaseName: undefined,
          taskOwner: undefined,
          description: undefined,
          pageSize: undefined,
          delFlag: undefined,
          stateInput: undefined,
          ppmChecklists: undefined,
          ppmMilepostFromList: vid_10nqlbbc7q_props?.dataSource,
          milepostNameList: undefined,
          projectPhaseId: undefined,
          updateBy: vid_zk4h5g3q5i_props?.value,
          pageNo: undefined,
          taskParticipant: undefined,
          startTime: undefined,
          workingHours: undefined,
          taskStatus: undefined,
          checkEntry: undefined,
          milepostName: a_3lhu5f974z.x_xtbh5m2572,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          createBy: undefined,
          taskDependency: undefined,
          taskName: undefined,
          endTime: undefined,
          taskBudget: undefined,
          projectId: vid_rzym3dfyuw_props?.selected.singleValue,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/edit/PpmMilepost';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_g59vuud5h1_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 编辑时回显里程碑与任务数据(72)
    const dataConnector_conn_vn7ruhy3b8_response = ref();
    const dataConnector_conn_vn7ruhy3b8 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntryId: undefined,
          projectPhaseName: undefined,
          taskOwner: undefined,
          description: undefined,
          pageSize: undefined,
          delFlag: undefined,
          stateInput: undefined,
          ppmChecklists: undefined,
          ppmMilepostFromList: undefined,
          milepostNameList: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          taskParticipant: undefined,
          startTime: undefined,
          workingHours: undefined,
          taskStatus: undefined,
          checkEntry: undefined,
          milepostName: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          createBy: undefined,
          taskDependency: undefined,
          taskName: undefined,
          endTime: undefined,
          taskBudget: undefined,
          projectId: undefined,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/queryPpmTaskList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_vn7ruhy3b8_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询部门树
    const dataConnector_conn_v6h2yy9bbt_response = ref();
    const dataConnector_conn_v6h2yy9bbt = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/getAllDepartment/tree';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_v6h2yy9bbt_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 下拉框任务负责人
    const dataConnector_conn_l44cgtfoag_response = ref();
    const dataConnector_conn_l44cgtfoag = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/query/task/owner/{projectId}';
          // 替换url中的变量
          url = url.replace('{projectId}', String(vid_rzym3dfyuw_props?.selected.singleValue))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_l44cgtfoag_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 下拉框任务参与人
    const dataConnector_conn_83jcf2ob83_response = ref();
    const dataConnector_conn_83jcf2ob83 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/query/task/participant/{projectId}';
          // 替换url中的变量
          url = url.replace('{projectId}', String(vid_rzym3dfyuw_props?.selected.singleValue))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_83jcf2ob83_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询部门树
    const dataConnector_conn_uaq3fc3de9_response = ref();
    const dataConnector_conn_uaq3fc3de9 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/getAllDepartment/tree';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_uaq3fc3de9_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑下平台研发部检查清单列表
    const dataConnector_conn_09bbltetan_response = ref();
    const dataConnector_conn_09bbltetan = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntry: undefined,
          checkEntryId: undefined,
          role: '平台研发部',
          checkCastingName: undefined,
          projectPhaseName: undefined,
          pageSize: undefined,
          milepostId: vid_ea0vg4m7vo_props?.currentRow.milepostId,
          delFlag: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: undefined,
          ppmChecklistList: undefined,
          checkCastingId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/checklist/queryPpmMilepostChecklistList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_09bbltetan_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询里程碑信息(新)
    const dataConnector_conn_bg5p5hhcyg_response = ref();
    const dataConnector_conn_bg5p5hhcyg = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            checkEntryId: undefined,
          projectPhaseName: undefined,
          taskOwner: undefined,
          description: undefined,
          pageSize: vid_ea0vg4m7vo_props?.rt_tableConfig.pagination.pageSize,
          delFlag: undefined,
          stateInput: vid_nl8vhqj1u2_props?.selected.label,
          ppmChecklists: undefined,
          ppmMilepostFromList: undefined,
          milepostNameList: undefined,
          projectPhaseId: undefined,
          updateBy: undefined,
          pageNo: vid_ea0vg4m7vo_props?.rt_tableConfig.pagination.current,
          taskParticipant: undefined,
          startTime: undefined,
          workingHours: undefined,
          taskStatus: vid_tfdys2yv27_props?.selected.label,
          checkEntry: undefined,
          milepostName: vid_lejnr9eg5j_props?.selected.label,
          milepostId: undefined,
          sort: vid_ea0vg4m7vo_props?.sorter,
          createBy: undefined,
          taskDependency: undefined,
          taskName: undefined,
          endTime: undefined,
          taskBudget: undefined,
          projectId: vid_rzym3dfyuw_props?.selected.singleValue,
          taskId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/milepost/query/milepost/list';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_bg5p5hhcyg_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 项目干系人下拉框
    const dataConnector_conn_d8su89hdj9_response = ref();
    const dataConnector_conn_d8su89hdj9 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/user_group/list';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_d8su89hdj9_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 资源投入(2023.02.09)
    const dataConnector_conn_x15xmrsj19_response = ref();
    const dataConnector_conn_x15xmrsj19 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            salerName: undefined,
          deliveryTime: undefined,
          departmentId: undefined,
          projectType: undefined,
          description: undefined,
          pageSize: vid_h4ydkfxkhj_props?.rt_tableConfig.pagination.pageSize,
          delFlag: undefined,
          preSalesCode: undefined,
          plName: undefined,
          projectStakeholders: undefined,
          attachment: undefined,
          projectCode: undefined,
          updateBy: undefined,
          pageNo: vid_h4ydkfxkhj_props?.rt_tableConfig.pagination.current,
          startTime: undefined,
          deliverCode: undefined,
          taskStatus: undefined,
          departmentName: undefined,
          projectNumber: undefined,
          acceptanceTime: undefined,
          updateTime: undefined,
          pmName: undefined,
          ppmEnclosureInfoList: undefined,
          createBy: undefined,
          createTime: undefined,
          endTime: undefined,
          projectName: undefined,
          salerNames: undefined,
          projectId: vid_rzym3dfyuw_props?.selected.singleValue
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/resource/investment';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_x15xmrsj19_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 树形展示项目信息(项目关联菜单下拉框)
    const dataConnector_conn_hg6t3d5noh_response = ref();
    const dataConnector_conn_hg6t3d5noh = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            modifiedTime: undefined,
          salerName: undefined,
          deliveryTime: undefined,
          departmentId: undefined,
          projectType: undefined,
          description: undefined,
          pageSize: undefined,
          delFlag: undefined,
          preSalesCode: undefined,
          plName: undefined,
          projectStakeholders: undefined,
          attachment: undefined,
          projectCode: undefined,
          updateBy: undefined,
          pageNo: undefined,
          createdTime: undefined,
          startTime: undefined,
          deliverCode: undefined,
          taskStatus: undefined,
          departmentName: undefined,
          projectNumber: undefined,
          acceptanceTime: undefined,
          updateTime: undefined,
          pmName: undefined,
          nodeType: 'MENU',
          parentId: undefined,
          ppmEnclosureInfoList: undefined,
          createBy: undefined,
          createTime: undefined,
          endTime: undefined,
          projectName: undefined,
          salerNames: undefined,
          projectId: undefined
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/project/tree/projectList';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_hg6t3d5noh_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


  /* ========================== 页面数据 ========================== */



  /* -------------------------- 响应 -------------------------- */

  /* ========================== 响应 ========================== */


  /* -------------------------- 函数 -------------------------- */

    // 自定义函数 updateProjectInfo
    const customFunction_vas189t1er = async (params) => {
      getProjectAnalysisEchart()
    }

  /* ========================== 函数 ========================== */


  /* -------------------------- 页面参数 -------------------------- */

    const pageParameter_state = reactive({
        'processInstanceId': props.processInstanceId ?? route.query.processInstanceId,
    })

  /* ========================== 页面参数 ========================== */


  /* -------------------------- 组件事件处理方法 -------------------------- */

    // ---------------------------- 组件数据同步 ----------------------------
    // 处理 下拉框_mqxo6je3zz 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_f924yn9zv0_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 下拉框_aadozbqk2v 的 systemList 属性关联
  watch(() => dataConnector_conn_bwclu26iao_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_bwclu26iao_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_bwclu26iao_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_pyppcfqy0i_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 表格_k6cg4p2hb7 的 systemList 属性关联
  watch(() => dataConnector_conn_mm1hgy00io_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_mm1hgy00io_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_mm1hgy00io_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_1e93e4wxa1_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 表格_ictlsqlk6d 的 systemList 属性关联
  watch(() => dataConnector_conn_09bbltetan_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_09bbltetan_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_09bbltetan_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_bl8zxuphn2_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 表格_6rk7kbvudd 的 systemList 属性关联
  watch(() => dataConnector_conn_ti68ou6lfu_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_ti68ou6lfu_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_ti68ou6lfu_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_q4iurfb43l_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 表格_rp4lzq74k9 的 systemList 属性关联
  watch(() => dataConnector_conn_lcug1puwhf_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_lcug1puwhf_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_lcug1puwhf_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_qequdcdegn_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 表格_7d4yt4kmd2 的 systemList 属性关联
  watch(() => dataConnector_conn_9xhw4y5pfn_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_9xhw4y5pfn_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_9xhw4y5pfn_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_jnyid3041z_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 表格_r52b9scvx4 的 systemList 属性关联
  watch(() => dataConnector_conn_vr5enw6446_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_vr5enw6446_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_vr5enw6446_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_8s72c1zxsf_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 表格_4pz1d1fs5f 的 systemList 属性关联
  watch(() => dataConnector_conn_q6ztv3obw3_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_q6ztv3obw3_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_q6ztv3obw3_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_rks1qpqlib_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 下拉树_veoious634 的 systemList 属性关联
  watch(() => dataConnector_conn_hg6t3d5noh_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_hg6t3d5noh_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_hg6t3d5noh_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_1e02teh5vo_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 下拉树_departmentName 的 systemList 属性关联
  watch(() => dataConnector_conn_uaq3fc3de9_response?.value?.departmentDtoList,
    () => {
      let dataList = dataConnector_conn_uaq3fc3de9_response?.value?.departmentDtoList

      vid_wq2zxrypxm_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 项目负责人-plName 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_4ep7x2c07v_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 项目经理-pmName 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_5ckqr8oxpq_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 新增-项目干系人-projectStakeholders 的 systemList 属性关联
  watch(() => dataConnector_conn_d8su89hdj9_response?.value?.departmentDtoList,
    () => {
      let dataList = dataConnector_conn_d8su89hdj9_response?.value?.departmentDtoList

      vid_wvtox7jkqe_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 新建-营销人员-salerName 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_hyw8pv81og_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目名称_projectName 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.projectName,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.projectName

      k_y80wm4oz2j.v_pef30hiy2p = dataList;
    },
    {deep: true})
  // 处理 下拉树_5wfsri9j9r 的 systemList 属性关联
  watch(() => dataConnector_conn_hg6t3d5noh_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_hg6t3d5noh_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_hg6t3d5noh_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_zkvqhsm3md_options_raw.value = dataList;
    },
    {deep: true})

















  // 处理 下拉树_5wfsri9j9r 的 value 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.parentName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.parentName

      k_y80wm4oz2j.l_xivbuqh2nr = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目代号_projectCode 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.projectCode,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.projectCode

      k_y80wm4oz2j.f_zrlkqb6rbh = dataList;
    },
    {deep: true})
  // 处理 编辑项目_售前编码_preSalesCode 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.preSalesCode,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.preSalesCode

      k_y80wm4oz2j.x_iyo4gqzs4s = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目编码_projectNumber 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.projectNumber,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.projectNumber

      k_y80wm4oz2j.e_kka7gatmrf = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目类型_projectType 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.projectType,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.projectType

      k_y80wm4oz2j.j_cory7m4cki = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目开始时间_startTime 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.startTime,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.startTime

      k_y80wm4oz2j.n_wo99z2x7u3 = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目交付编码_deliverCode 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.deliverCode,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.deliverCode

      k_y80wm4oz2j.s_90q4pxtsdn = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目验收时间_acceptanceTime 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.acceptanceTime,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.acceptanceTime

      k_y80wm4oz2j.c_paxeg92moe = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目上线时间_deliveryTime 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.deliveryTime,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.deliveryTime

      k_y80wm4oz2j.z_yov8nipnbo = dataList;
    },
    {deep: true})
  // 处理 编辑下拉树_departmentName 的 systemList 属性关联
  watch(() => dataConnector_conn_uaq3fc3de9_response?.value?.departmentDtoList,
    () => {
      let dataList = dataConnector_conn_uaq3fc3de9_response?.value?.departmentDtoList

      vid_lwrjgnl5hk_options_raw.value = dataList;
    },
    {deep: true})

















  // 处理 编辑下拉树_departmentName 的 value 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.departmentName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.departmentName

      k_y80wm4oz2j.departmentName = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目结束时间_endTime 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.endTime,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.endTime

      k_y80wm4oz2j.k_ogej9eytbu = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目负责人_plName 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_a8y8q0rvsj_options_raw.value = dataList;
    },
    {deep: true})



















  // 处理 编辑项目_项目负责人_plName 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.plName,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.plName

      k_y80wm4oz2j.k_12cajpmxf1 = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目经理_pmName 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_p459smma70_options_raw.value = dataList;
    },
    {deep: true})



















  // 处理 编辑项目_项目经理_pmName 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.pmName,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.pmName

      k_y80wm4oz2j.t_209sj57mko = dataList;
    },
    {deep: true})
  // 处理 编辑_项目干系人_projectStakeholders 的 systemList 属性关联
  watch(() => dataConnector_conn_d8su89hdj9_response?.value?.departmentDtoList,
    () => {
      let dataList = dataConnector_conn_d8su89hdj9_response?.value?.departmentDtoList

      vid_yibvw5rcmz_options_raw.value = dataList;
    },
    {deep: true})



















  // 处理 编辑_项目干系人_projectStakeholders 的 value 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.projectStakeholdersName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.projectStakeholdersName

      k_y80wm4oz2j.a_bmp3qioph4 = dataList;
    },
    {deep: true})
  // 处理 编辑-营销人员-salerName 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_zt2wam5umw_options_raw.value = dataList;
    },
    {deep: true})

















  // 处理 编辑-营销人员-salerName 的 value 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.salerName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.salerName

      k_y80wm4oz2j.k_qz1ske7f6t = dataList;
    },
    {deep: true})
  // 处理 编辑项目_项目描述_description 的 value 属性关联
  watch(() => dataConnector_conn_7knelg72xf_response?.value?.description,
    () => {
      let dataList = dataConnector_conn_7knelg72xf_response?.value?.description

      k_y80wm4oz2j.b_5dur7n82nh = dataList;
    },
    {deep: true})
  // 处理 编辑动作列表 的 systemList 属性关联
  watch(() => dataConnector_conn_vn7ruhy3b8_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_vn7ruhy3b8_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_vn7ruhy3b8_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_10nqlbbc7q_props.dataSource = dataList;
    },
    {deep: true})
  // 处理 依赖任务_taskDependency 的 systemList 属性关联
  watch(() => dataConnector_conn_qmbd3q3hty_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_qmbd3q3hty_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_qmbd3q3hty_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_rwmvgn46dt_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 任务参与人_taskParticipant 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_727os2vxmi_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 任务负责人_taskOwner 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_q7deknz720_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 里程碑名称_milepostName 的 value 属性关联
  watch(() => dataConnector_conn_vn7ruhy3b8_response?.value?.dataList?.[0]?.milepostName,
    () => {
      let dataList = dataConnector_conn_vn7ruhy3b8_response?.value?.dataList?.[0]?.milepostName

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_vn7ruhy3b8_response?.value?.[0]?.milepostName;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      a_3lhu5f974z.x_xtbh5m2572 = dataList;
    },
    {deep: true})
  // 处理 项目阶段_projectPhaseId 的 systemList 属性关联
  watch(() => dataConnector_conn_bwclu26iao_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_bwclu26iao_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_bwclu26iao_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_68rzqstn2n_options_raw.value = dataList;
    },
    {deep: true})



















  // 处理 项目阶段_projectPhaseId 的 value 属性关联
  watch(() => dataConnector_conn_vn7ruhy3b8_response?.value?.dataList?.[0]?.projectPhaseId,
    () => {
      let dataList = dataConnector_conn_vn7ruhy3b8_response?.value?.dataList?.[0]?.projectPhaseId

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_vn7ruhy3b8_response?.value?.[0]?.projectPhaseId;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      a_3lhu5f974z.t_qkz3lpi7yi = dataList;
    },
    {deep: true})
  // 处理 新建任务依赖_taskDependencyArray 的 systemList 属性关联
  watch(() => dataConnector_conn_qmbd3q3hty_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_qmbd3q3hty_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_qmbd3q3hty_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_zcxsmd50is_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 任务参与人_taskParticipant 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_ec0kwncf8s_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 任务负责人_taskOwner 的 systemList 属性关联
  watch(() => dataConnector_conn_z0pio5iu43_response?.value?.data?.content,
    () => {
      let dataList = dataConnector_conn_z0pio5iu43_response?.value?.data?.content

      vid_wpwf9x791a_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 项目阶段_projectPhaseId 的 systemList 属性关联
  watch(() => dataConnector_conn_bwclu26iao_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_bwclu26iao_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_bwclu26iao_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_qvb0z2tr72_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 项目上线时间 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.deliveryTime,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.deliveryTime

      vid_dwanramzuy_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 项目开始时间 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.startTime,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.startTime

      vid_1xsrpamsgz_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 营销人员 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.endTime,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.endTime

      vid_d5do19ir4k_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 项目验收时间 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.acceptanceTime,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.acceptanceTime

      vid_x7g6b1e0w2_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_aw57qjlya0 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.pmName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.pmName

      vid_6hh0wbrs1i_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_bpj417i3pa 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.departmentName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.departmentName

      vid_mirym7gnna_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_mca824ly1q 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.salerNames,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.salerNames

      vid_fm2ojahzgz_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 项目备注 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.plName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.plName

      vid_1lu28x6kdb_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_bp9pzq5r32 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.projectStakeholdersName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.projectStakeholdersName

      vid_3lumos8it3_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 项目代号 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.projectCode,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.projectCode

      vid_sc3fyx5qzu_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 售前编码 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.preSalesCode,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.preSalesCode

      vid_9o1tjwfo9e_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 项目名称 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.projectName,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.projectName

      vid_9m6jfd6fc1_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 项目编码 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.projectNumber,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.projectNumber

      vid_0u6kt0pqgq_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 售前交付编码 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.deliverCode,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.deliverCode

      vid_eijpgq36zy_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_ba16332ypn 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.description,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.description

      vid_i7d5ckxt5t_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 项目类型 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.projectType,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.projectType

      vid_ntnyvkkrrf_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_74dpfy7jad 的 rt_text 属性关联
  watch(() => dataConnector_conn_lekr0gf5rr_response?.value?.attachment,
    () => {
      let dataList = dataConnector_conn_lekr0gf5rr_response?.value?.attachment

      vid_c8uu7nyyk4_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 800000 的 rt_text 属性关联
  watch(() => dataConnector_conn_x15xmrsj19_response?.value?.actualWorkingHours,
    () => {
      let dataList = dataConnector_conn_x15xmrsj19_response?.value?.actualWorkingHours

      vid_lws3y9xg07_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_qkylvybckx 的 rt_text 属性关联
  watch(() => dataConnector_conn_x15xmrsj19_response?.value?.totalTime,
    () => {
      let dataList = dataConnector_conn_x15xmrsj19_response?.value?.totalTime

      vid_c23z2h41bs_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 800000 的 rt_text 属性关联
  watch(() => dataConnector_conn_x15xmrsj19_response?.value?.projectBudget,
    () => {
      let dataList = dataConnector_conn_x15xmrsj19_response?.value?.projectBudget

      vid_thmizi8his_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 资源投入表格 的 systemList 属性关联
  watch(() => dataConnector_conn_x15xmrsj19_response?.value?.taskResourceDtoList,
    () => {
      let dataList = dataConnector_conn_x15xmrsj19_response?.value?.taskResourceDtoList

      vid_h4ydkfxkhj_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 资源投入表格 的 totalNumber 属性关联
  watch(() => dataConnector_conn_x15xmrsj19_response?.value?.totalElements,
    () => {
      let dataList = dataConnector_conn_x15xmrsj19_response?.value?.totalElements

      vid_h4ydkfxkhj_props.totalNumber = dataList;
    },
    {deep: true})
  // 处理 筛选任务参与人_taskParticipant 的 systemList 属性关联
  watch(() => dataConnector_conn_83jcf2ob83_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_83jcf2ob83_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_83jcf2ob83_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_qz4a31s4ec_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 筛选任务负责人_taskOwner 的 systemList 属性关联
  watch(() => dataConnector_conn_l44cgtfoag_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_l44cgtfoag_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_l44cgtfoag_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_dc6qyecxin_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 筛选里程碑名称_milepostName 的 systemList 属性关联
  watch(() => dataConnector_conn_mqkpcxcx3u_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_mqkpcxcx3u_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_mqkpcxcx3u_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_lejnr9eg5j_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 任务表格_xam91fqixu 的 systemList 属性关联
  watch(() => dataConnector_conn_qvkp7x8evl_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_qvkp7x8evl_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_qvkp7x8evl_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_xrk0mz30yy_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 任务表格_xam91fqixu 的 totalNumber 属性关联
  watch(() => dataConnector_conn_qvkp7x8evl_response?.value?.totalElements,
    () => {
      let dataList = dataConnector_conn_qvkp7x8evl_response?.value?.totalElements

      vid_xrk0mz30yy_props.totalNumber = dataList;
    },
    {deep: true})
  // 处理 里程碑表格_l2aibglp7z 的 systemList 属性关联
  watch(() => dataConnector_conn_bg5p5hhcyg_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_bg5p5hhcyg_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_bg5p5hhcyg_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_ea0vg4m7vo_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 里程碑表格_l2aibglp7z 的 totalNumber 属性关联
  watch(() => dataConnector_conn_bg5p5hhcyg_response?.value?.totalElements,
    () => {
      let dataList = dataConnector_conn_bg5p5hhcyg_response?.value?.totalElements

      vid_ea0vg4m7vo_props.totalNumber = dataList;
    },
    {deep: true})
  // 处理 项目树形控件 的 systemList 属性关联
  watch(() => dataConnector_conn_mpmbzok2b4_response?.value?.dataList,
    () => {
      let dataList = dataConnector_conn_mpmbzok2b4_response?.value?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_mpmbzok2b4_response?.value;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_rzym3dfyuw_options_raw.value = dataList;
    },
    {deep: true})
    // ============================ 组件数据同步 ============================

  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_g58dms2vll_cancel = throttle(async (...params) => {
  vid_g58dms2vll_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_g58dms2vll_ok = throttle(async (...params) => {
  vid_g58dms2vll_props.visible = false;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_u3y9135udo_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_u3y9135udo_props.rt_tableConfig.pagination.current = current;
  vid_u3y9135udo_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_u3y9135udo_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_u3y9135udo_props.systemSort = sorterList;
  vid_u3y9135udo_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_olqow30ehy 事件
  */
  let handle_vid_u3y9135udo_clickBtn_olqow30ehy = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_u3y9135udo_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_z0z28y7i95 事件
  */
  let handle_vid_u3y9135udo_clickBtn_z0z28y7i95 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_u3y9135udo_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_sclbrr45vq 事件
  */
  let handle_vid_u3y9135udo_clickBtn_sclbrr45vq = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_u3y9135udo_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_9mm4rwctrs 事件
  */
  let handle_vid_u3y9135udo_clickBtn_9mm4rwctrs = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_u3y9135udo_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_fjb04o60av 事件
  */
  let handle_vid_u3y9135udo_clickBtn_fjb04o60av = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_u3y9135udo_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_ili766j6wi_click = throttle(async (...params) => {
  vid_g58dms2vll_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_2yyk1fkj9d_cancel = throttle(async (...params) => {
  vid_2yyk1fkj9d_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_2yyk1fkj9d_ok = throttle(async (...params) => {
  vid_2yyk1fkj9d_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_9f1tbhl4h8_cancel = throttle(async (...params) => {
  vid_9f1tbhl4h8_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_9f1tbhl4h8_ok = throttle(async (...params) => {
  vid_9f1tbhl4h8_props.visible = false;
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_sth9745oox_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_sth9745oox_props.selected.label = option.map(item => item.label);
  vid_sth9745oox_props.selected.value = option.map(item => item.value);
  vid_sth9745oox_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_op95sd13gl_change = throttle(async (...params) => {
  const [,option] = params;
  vid_op95sd13gl_props.selected.label = option?.label;
  vid_op95sd13gl_props.selected.value = option?.value;
  vid_op95sd13gl_props.selected.option = option;
  vid_op95sd13gl_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_op95sd13gl_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_op95sd13gl_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_bli3y5dska_change = throttle(async (...params) => {
  const [,option] = params;
  vid_bli3y5dska_props.selected.label = option?.label;
  vid_bli3y5dska_props.selected.value = option?.value;
  vid_bli3y5dska_props.selected.option = option;
  vid_bli3y5dska_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_bli3y5dska_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_bli3y5dska_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_jljbkfk7m8_change = throttle(async (...params) => {
  const [,option] = params;
  vid_jljbkfk7m8_props.selected.label = option?.label;
  vid_jljbkfk7m8_props.selected.value = option?.value;
  vid_jljbkfk7m8_props.selected.option = option;
  vid_jljbkfk7m8_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_jljbkfk7m8_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_jljbkfk7m8_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_jhmsp1omgn_change = throttle(async (...params) => {
  const [,option] = params;
  vid_jhmsp1omgn_props.selected.label = option?.label;
  vid_jhmsp1omgn_props.selected.value = option?.value;
  vid_jhmsp1omgn_props.selected.option = option;
  vid_jhmsp1omgn_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_jhmsp1omgn_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_jhmsp1omgn_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_1dy1lfxsna_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_1dy1lfxsna_props.selected.label = option.map(item => item.label);
  vid_1dy1lfxsna_props.selected.value = option.map(item => item.value);
  vid_1dy1lfxsna_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_f924yn9zv0_change = throttle(async (...params) => {
  const [,option] = params;
  vid_f924yn9zv0_props.selected.label = option?.label;
  vid_f924yn9zv0_props.selected.value = option?.value;
  vid_f924yn9zv0_props.selected.option = option;
  vid_f924yn9zv0_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_f924yn9zv0_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_f924yn9zv0_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_s91z0jrn6n_change = throttle(async (...params) => {
  const [,option] = params;
  vid_s91z0jrn6n_props.selected.label = option?.label;
  vid_s91z0jrn6n_props.selected.value = option?.value;
  vid_s91z0jrn6n_props.selected.option = option;
  vid_s91z0jrn6n_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_s91z0jrn6n_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_s91z0jrn6n_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_qqjroo8awh_change = throttle(async (...params) => {
  const [,option] = params;
  vid_qqjroo8awh_props.selected.label = option?.label;
  vid_qqjroo8awh_props.selected.value = option?.value;
  vid_qqjroo8awh_props.selected.option = option;
  vid_qqjroo8awh_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_qqjroo8awh_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_qqjroo8awh_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_pyppcfqy0i_change = throttle(async (...params) => {
  const [,option] = params;
  vid_pyppcfqy0i_props.selected.label = option?.label;
  vid_pyppcfqy0i_props.selected.value = option?.value;
  vid_pyppcfqy0i_props.selected.option = option;
  vid_pyppcfqy0i_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_pyppcfqy0i_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_pyppcfqy0i_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_kayafdcysa_cancel = throttle(async (...params) => {
  vid_kayafdcysa_props.visible = false;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_j1gz4cdo9y_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_j1gz4cdo9y_props.rt_tableConfig.pagination.current = current;
  vid_j1gz4cdo9y_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_j1gz4cdo9y_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_j1gz4cdo9y_props.systemSort = sorterList;
  vid_j1gz4cdo9y_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_52paujslly 事件
  */
  let handle_vid_j1gz4cdo9y_clickBtn_52paujslly = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_j1gz4cdo9y_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_r1p22l56nt 事件
  */
  let handle_vid_j1gz4cdo9y_clickBtn_r1p22l56nt = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_j1gz4cdo9y_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_iuwh8z8qyq 事件
  */
  let handle_vid_j1gz4cdo9y_clickBtn_iuwh8z8qyq = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_j1gz4cdo9y_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_ds72c0hav8 事件
  */
  let handle_vid_j1gz4cdo9y_clickBtn_ds72c0hav8 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_j1gz4cdo9y_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_20xf2z11k4 事件
  */
  let handle_vid_j1gz4cdo9y_clickBtn_20xf2z11k4 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_j1gz4cdo9y_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_j51c8yh5iv_click = throttle(async (...params) => {
  vid_kayafdcysa_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_ui8qtu2f2h_cancel = throttle(async (...params) => {
  vid_ui8qtu2f2h_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_ui8qtu2f2h_ok = throttle(async (...params) => {
  vid_ui8qtu2f2h_props.visible = false;
  await dataConnector_conn_dze43tmgxi()
  await dataConnector_conn_qvkp7x8evl()
  await dataConnector_conn_bg5p5hhcyg()
  }, 500)
  /**
  * 处理元素 单选按钮组 的 change 事件
  */
  let handle_vid_5rm2qtfkt8_change = throttle(async (...params) => {
  const [e] = params;
  vid_5rm2qtfkt8_props.selected.label = vid_5rm2qtfkt8_options.value().find(item => item.value == e.target.value).label;
  vid_5rm2qtfkt8_props.selected.value = e.target.value;
  vid_5rm2qtfkt8_props.selected.option = vid_5rm2qtfkt8_options.value().find(item => item.value == e.target.value);
  vid_5rm2qtfkt8_props.selected.optionArray = [{ label: vid_5rm2qtfkt8_props.selected.option?.label, value: vid_5rm2qtfkt8_props.selected.option?.value }];
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_lyqnvc72no_cancel = throttle(async (...params) => {
  vid_lyqnvc72no_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_lyqnvc72no_ok = throttle(async (...params) => {
  vid_lyqnvc72no_props.visible = false;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_1e93e4wxa1_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_1e93e4wxa1_props.rt_tableConfig.pagination.current = current;
  vid_1e93e4wxa1_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_1e93e4wxa1_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_1e93e4wxa1_props.systemSort = sorterList;
  vid_1e93e4wxa1_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7mfj03koq6 事件
  */
  let handle_vid_1e93e4wxa1_clickBtn_7mfj03koq6 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_1e93e4wxa1_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_mk949yimtb 事件
  */
  let handle_vid_1e93e4wxa1_clickBtn_mk949yimtb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_1e93e4wxa1_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rw7y89sz9a 事件
  */
  let handle_vid_1e93e4wxa1_clickBtn_rw7y89sz9a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_1e93e4wxa1_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_camar4fp14 事件
  */
  let handle_vid_1e93e4wxa1_clickBtn_camar4fp14 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_1e93e4wxa1_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_md4hup9i7a 事件
  */
  let handle_vid_1e93e4wxa1_clickBtn_md4hup9i7a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_1e93e4wxa1_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_bl8zxuphn2_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_bl8zxuphn2_props.rt_tableConfig.pagination.current = current;
  vid_bl8zxuphn2_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_bl8zxuphn2_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_bl8zxuphn2_props.systemSort = sorterList;
  vid_bl8zxuphn2_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7mfj03koq6 事件
  */
  let handle_vid_bl8zxuphn2_clickBtn_7mfj03koq6 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_bl8zxuphn2_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_mk949yimtb 事件
  */
  let handle_vid_bl8zxuphn2_clickBtn_mk949yimtb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_bl8zxuphn2_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rw7y89sz9a 事件
  */
  let handle_vid_bl8zxuphn2_clickBtn_rw7y89sz9a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_bl8zxuphn2_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_camar4fp14 事件
  */
  let handle_vid_bl8zxuphn2_clickBtn_camar4fp14 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_bl8zxuphn2_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_md4hup9i7a 事件
  */
  let handle_vid_bl8zxuphn2_clickBtn_md4hup9i7a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_bl8zxuphn2_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_q4iurfb43l_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_q4iurfb43l_props.rt_tableConfig.pagination.current = current;
  vid_q4iurfb43l_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_q4iurfb43l_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_q4iurfb43l_props.systemSort = sorterList;
  vid_q4iurfb43l_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7mfj03koq6 事件
  */
  let handle_vid_q4iurfb43l_clickBtn_7mfj03koq6 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_q4iurfb43l_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_mk949yimtb 事件
  */
  let handle_vid_q4iurfb43l_clickBtn_mk949yimtb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_q4iurfb43l_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rw7y89sz9a 事件
  */
  let handle_vid_q4iurfb43l_clickBtn_rw7y89sz9a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_q4iurfb43l_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_camar4fp14 事件
  */
  let handle_vid_q4iurfb43l_clickBtn_camar4fp14 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_q4iurfb43l_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_md4hup9i7a 事件
  */
  let handle_vid_q4iurfb43l_clickBtn_md4hup9i7a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_q4iurfb43l_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_qequdcdegn_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_qequdcdegn_props.rt_tableConfig.pagination.current = current;
  vid_qequdcdegn_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_qequdcdegn_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_qequdcdegn_props.systemSort = sorterList;
  vid_qequdcdegn_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7mfj03koq6 事件
  */
  let handle_vid_qequdcdegn_clickBtn_7mfj03koq6 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_qequdcdegn_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_mk949yimtb 事件
  */
  let handle_vid_qequdcdegn_clickBtn_mk949yimtb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_qequdcdegn_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rw7y89sz9a 事件
  */
  let handle_vid_qequdcdegn_clickBtn_rw7y89sz9a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_qequdcdegn_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_camar4fp14 事件
  */
  let handle_vid_qequdcdegn_clickBtn_camar4fp14 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_qequdcdegn_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_md4hup9i7a 事件
  */
  let handle_vid_qequdcdegn_clickBtn_md4hup9i7a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_qequdcdegn_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_jnyid3041z_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_jnyid3041z_props.rt_tableConfig.pagination.current = current;
  vid_jnyid3041z_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_jnyid3041z_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_jnyid3041z_props.systemSort = sorterList;
  vid_jnyid3041z_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7mfj03koq6 事件
  */
  let handle_vid_jnyid3041z_clickBtn_7mfj03koq6 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_jnyid3041z_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_mk949yimtb 事件
  */
  let handle_vid_jnyid3041z_clickBtn_mk949yimtb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_jnyid3041z_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rw7y89sz9a 事件
  */
  let handle_vid_jnyid3041z_clickBtn_rw7y89sz9a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_jnyid3041z_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_camar4fp14 事件
  */
  let handle_vid_jnyid3041z_clickBtn_camar4fp14 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_jnyid3041z_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_md4hup9i7a 事件
  */
  let handle_vid_jnyid3041z_clickBtn_md4hup9i7a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_jnyid3041z_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_8s72c1zxsf_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_8s72c1zxsf_props.rt_tableConfig.pagination.current = current;
  vid_8s72c1zxsf_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_8s72c1zxsf_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_8s72c1zxsf_props.systemSort = sorterList;
  vid_8s72c1zxsf_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7mfj03koq6 事件
  */
  let handle_vid_8s72c1zxsf_clickBtn_7mfj03koq6 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_8s72c1zxsf_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_mk949yimtb 事件
  */
  let handle_vid_8s72c1zxsf_clickBtn_mk949yimtb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_8s72c1zxsf_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rw7y89sz9a 事件
  */
  let handle_vid_8s72c1zxsf_clickBtn_rw7y89sz9a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_8s72c1zxsf_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_camar4fp14 事件
  */
  let handle_vid_8s72c1zxsf_clickBtn_camar4fp14 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_8s72c1zxsf_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_md4hup9i7a 事件
  */
  let handle_vid_8s72c1zxsf_clickBtn_md4hup9i7a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_8s72c1zxsf_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_rks1qpqlib_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_rks1qpqlib_props.rt_tableConfig.pagination.current = current;
  vid_rks1qpqlib_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_rks1qpqlib_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_rks1qpqlib_props.systemSort = sorterList;
  vid_rks1qpqlib_props.sorter = sorterValue;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7mfj03koq6 事件
  */
  let handle_vid_rks1qpqlib_clickBtn_7mfj03koq6 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_rks1qpqlib_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_mk949yimtb 事件
  */
  let handle_vid_rks1qpqlib_clickBtn_mk949yimtb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_rks1qpqlib_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rw7y89sz9a 事件
  */
  let handle_vid_rks1qpqlib_clickBtn_rw7y89sz9a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_rks1qpqlib_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_camar4fp14 事件
  */
  let handle_vid_rks1qpqlib_clickBtn_camar4fp14 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_rks1qpqlib_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_md4hup9i7a 事件
  */
  let handle_vid_rks1qpqlib_clickBtn_md4hup9i7a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_rks1qpqlib_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_jlz2iy5yjj_cancel = throttle(async (...params) => {
  vid_jlz2iy5yjj_props.visible = false;
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_om6xs2pbh0_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_jlz2iy5yjj_ok = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_om6xs2pbh0_ref.value?.validate();
  vid_jlz2iy5yjj_props.visible = false;
  await dataConnector_conn_39gp83wuu0()
  await dataConnector_conn_mpmbzok2b4()
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_om6xs2pbh0_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  }, 500)
  /**
  * 处理元素 下拉树 的 change 事件
  */
  let handle_vid_1e02teh5vo_change = throttle(async (...params) => {
  let [value, label] = params;
  label = label ?? value?.map((item) => item.label) ?? [];
  vid_1e02teh5vo_props.selected.label = label;
  vid_1e02teh5vo_props.selected.value = value;
  vid_1e02teh5vo_props.selected.option = label.map((item, index) => ({
  label: item,
  value: value[index] ? value[index] : value,
  }));
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_8ggecxpznd_change = throttle(async (...params) => {
  const [,option] = params;
  vid_8ggecxpznd_props.selected.label = option?.label;
  vid_8ggecxpznd_props.selected.value = option?.value;
  vid_8ggecxpznd_props.selected.option = option;
  vid_8ggecxpznd_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_8ggecxpznd_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_8ggecxpznd_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉树 的 change 事件
  */
  let handle_vid_wq2zxrypxm_change = throttle(async (...params) => {
  let [value, label] = params;
  label = label ?? value?.map((item) => item.label) ?? [];
  vid_wq2zxrypxm_props.selected.label = label;
  vid_wq2zxrypxm_props.selected.value = value;
  vid_wq2zxrypxm_props.selected.option = label.map((item, index) => ({
  label: item,
  value: value[index] ? value[index] : value,
  }));
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_4ep7x2c07v_change = throttle(async (...params) => {
  const [,option] = params;
  vid_4ep7x2c07v_props.selected.label = option?.label;
  vid_4ep7x2c07v_props.selected.value = option?.value;
  vid_4ep7x2c07v_props.selected.option = option;
  vid_4ep7x2c07v_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_4ep7x2c07v_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_4ep7x2c07v_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_5ckqr8oxpq_change = throttle(async (...params) => {
  const [,option] = params;
  vid_5ckqr8oxpq_props.selected.label = option?.label;
  vid_5ckqr8oxpq_props.selected.value = option?.value;
  vid_5ckqr8oxpq_props.selected.option = option;
  vid_5ckqr8oxpq_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_5ckqr8oxpq_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_5ckqr8oxpq_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 focus 事件
  */
  let handle_vid_wvtox7jkqe_focus = throttle(async (...params) => {
  await dataConnector_conn_d8su89hdj9()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_wvtox7jkqe_change = throttle(async (...params) => {
  const [,option] = params;
  vid_wvtox7jkqe_props.selected.label = option?.label;
  vid_wvtox7jkqe_props.selected.value = option?.value;
  vid_wvtox7jkqe_props.selected.option = option;
  vid_wvtox7jkqe_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_wvtox7jkqe_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_wvtox7jkqe_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_hyw8pv81og_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_hyw8pv81og_props.selected.label = option.map(item => item.label);
  vid_hyw8pv81og_props.selected.value = option.map(item => item.value);
  vid_hyw8pv81og_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_hkf53ba1mm_cancel = throttle(async (...params) => {
  vid_hkf53ba1mm_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_hkf53ba1mm_ok = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_iazs2oy50w_ref.value?.validate();
  vid_hkf53ba1mm_props.visible = false;
  await dataConnector_conn_vjjk72fyok()
  await dataConnector_conn_mpmbzok2b4()
  await dataConnector_conn_lekr0gf5rr()
  }, 500)
  /**
  * 处理元素 下拉树 的 change 事件
  */
  let handle_vid_zkvqhsm3md_change = throttle(async (...params) => {
  let [value, label] = params;
  label = label ?? value?.map((item) => item.label) ?? [];
  vid_zkvqhsm3md_props.selected.label = label;
  vid_zkvqhsm3md_props.selected.value = value;
  vid_zkvqhsm3md_props.selected.option = label.map((item, index) => ({
  label: item,
  value: value[index] ? value[index] : value,
  }));
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_e3jxf416hx_change = throttle(async (...params) => {
  const [,option] = params;
  vid_e3jxf416hx_props.selected.label = option?.label;
  vid_e3jxf416hx_props.selected.value = option?.value;
  vid_e3jxf416hx_props.selected.option = option;
  vid_e3jxf416hx_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_e3jxf416hx_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_e3jxf416hx_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉树 的 change 事件
  */
  let handle_vid_lwrjgnl5hk_change = throttle(async (...params) => {
  let [value, label] = params;
  label = label ?? value?.map((item) => item.label) ?? [];
  vid_lwrjgnl5hk_props.selected.label = label;
  vid_lwrjgnl5hk_props.selected.value = value;
  vid_lwrjgnl5hk_props.selected.option = label.map((item, index) => ({
  label: item,
  value: value[index] ? value[index] : value,
  }));
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_a8y8q0rvsj_change = throttle(async (...params) => {
  const [,option] = params;
  vid_a8y8q0rvsj_props.selected.label = option?.label;
  vid_a8y8q0rvsj_props.selected.value = option?.value;
  vid_a8y8q0rvsj_props.selected.option = option;
  vid_a8y8q0rvsj_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_a8y8q0rvsj_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_a8y8q0rvsj_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_p459smma70_change = throttle(async (...params) => {
  const [,option] = params;
  vid_p459smma70_props.selected.label = option?.label;
  vid_p459smma70_props.selected.value = option?.value;
  vid_p459smma70_props.selected.option = option;
  vid_p459smma70_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_p459smma70_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_p459smma70_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 focus 事件
  */
  let handle_vid_yibvw5rcmz_focus = throttle(async (...params) => {
  await dataConnector_conn_d8su89hdj9()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_yibvw5rcmz_change = throttle(async (...params) => {
  const [,option] = params;
  vid_yibvw5rcmz_props.selected.label = option?.label;
  vid_yibvw5rcmz_props.selected.value = option?.value;
  vid_yibvw5rcmz_props.selected.option = option;
  vid_yibvw5rcmz_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_yibvw5rcmz_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_yibvw5rcmz_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_zt2wam5umw_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_zt2wam5umw_props.selected.label = option.map(item => item.label);
  vid_zt2wam5umw_props.selected.value = option.map(item => item.value);
  vid_zt2wam5umw_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_afcizir8di_cancel = throttle(async (...params) => {
  vid_afcizir8di_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_afcizir8di_ok = throttle(async (...params) => {
  vid_afcizir8di_props.visible = false;
  await dataConnector_conn_8zblbycnnc()
  await dataConnector_conn_mpmbzok2b4()
  await dataConnector_conn_lekr0gf5rr()
  await dataConnector_conn_qvkp7x8evl()
  await dataConnector_conn_bg5p5hhcyg()
  await dataConnector_conn_x15xmrsj19()
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_9crzoz0cys_cancel = throttle(async (...params) => {
  vid_9crzoz0cys_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_9crzoz0cys_ok = throttle(async (...params) => {
  vid_9crzoz0cys_props.visible = false;
  await dataConnector_conn_489q99v6wk()
  await dataConnector_conn_qvkp7x8evl()
  await dataConnector_conn_bg5p5hhcyg()
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_emxoj1ks3o_cancel = throttle(async (...params) => {
  vid_emxoj1ks3o_props.visible = false;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_emxoj1ks3o_ok = throttle(async (...params) => {
  vid_emxoj1ks3o_props.visible = false;
  await dataConnector_conn_acteakf4vz()
  await dataConnector_conn_bg5p5hhcyg()
  await dataConnector_conn_qvkp7x8evl()
  await dataConnector_conn_x15xmrsj19()
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_ujuoy3urqm_ok = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_ptqzr22zsl_ref.value?.validate();
  await dataConnector_conn_g59vuud5h1()
  await dataConnector_conn_qvkp7x8evl()
  await dataConnector_conn_bg5p5hhcyg()
  vid_ujuoy3urqm_props.visible = false;
  await dataConnector_conn_x15xmrsj19()
  await customFunction_vas189t1er();
  }, 500)
  /**
  * 处理元素 下拉复选框 的 focus 事件
  */
  let handle_vid_rwmvgn46dt_focus = throttle(async (...params) => {
  await dataConnector_conn_qmbd3q3hty()
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_rwmvgn46dt_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_rwmvgn46dt_props.selected.label = option.map(item => item.label);
  vid_rwmvgn46dt_props.selected.value = option.map(item => item.value);
  vid_rwmvgn46dt_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_727os2vxmi_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_727os2vxmi_props.selected.label = option.map(item => item.label);
  vid_727os2vxmi_props.selected.value = option.map(item => item.value);
  vid_727os2vxmi_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_q7deknz720_change = throttle(async (...params) => {
  const [,option] = params;
  vid_q7deknz720_props.selected.label = option?.label;
  vid_q7deknz720_props.selected.value = option?.value;
  vid_q7deknz720_props.selected.option = option;
  vid_q7deknz720_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_q7deknz720_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_q7deknz720_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_aws7k3cemp_change = throttle(async (...params) => {
  const [,option] = params;
  vid_aws7k3cemp_props.selected.label = option?.label;
  vid_aws7k3cemp_props.selected.value = option?.value;
  vid_aws7k3cemp_props.selected.option = option;
  vid_aws7k3cemp_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_aws7k3cemp_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_aws7k3cemp_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_68rzqstn2n_change = throttle(async (...params) => {
  const [,option] = params;
  vid_68rzqstn2n_props.selected.label = option?.label;
  vid_68rzqstn2n_props.selected.value = option?.value;
  vid_68rzqstn2n_props.selected.option = option;
  vid_68rzqstn2n_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_68rzqstn2n_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_68rzqstn2n_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_74nuuvmbbh_ok = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_2s3pd49wqk_ref.value?.validate();
  await dataConnector_conn_jucgqqn5p2()
  vid_74nuuvmbbh_props.visible = false;
  await dataConnector_conn_bg5p5hhcyg()
  await dataConnector_conn_qvkp7x8evl()
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  vid_y072heuac7_ref.value?.reset();
  await dataConnector_conn_x15xmrsj19()
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_2s3pd49wqk_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  await customFunction_vas189t1er();
  }, 500)
  /**
  * 处理元素 下拉复选框 的 focus 事件
  */
  let handle_vid_zcxsmd50is_focus = throttle(async (...params) => {
  await dataConnector_conn_qmbd3q3hty()
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_zcxsmd50is_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_zcxsmd50is_props.selected.label = option.map(item => item.label);
  vid_zcxsmd50is_props.selected.value = option.map(item => item.value);
  vid_zcxsmd50is_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 下拉复选框 的 change 事件
  */
  let handle_vid_ec0kwncf8s_change = throttle(async (...params) => {
  const [,option] = params;
  if(!option || !Array.isArray(option)){
  return;
  }
  vid_ec0kwncf8s_props.selected.label = option.map(item => item.label);
  vid_ec0kwncf8s_props.selected.value = option.map(item => item.value);
  vid_ec0kwncf8s_props.selected.option = option;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_wpwf9x791a_change = throttle(async (...params) => {
  const [,option] = params;
  vid_wpwf9x791a_props.selected.label = option?.label;
  vid_wpwf9x791a_props.selected.value = option?.value;
  vid_wpwf9x791a_props.selected.option = option;
  vid_wpwf9x791a_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_wpwf9x791a_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_wpwf9x791a_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_qvb0z2tr72_change = throttle(async (...params) => {
  const [,option] = params;
  vid_qvb0z2tr72_props.selected.label = option?.label;
  vid_qvb0z2tr72_props.selected.value = option?.value;
  vid_qvb0z2tr72_props.selected.option = option;
  vid_qvb0z2tr72_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_qvb0z2tr72_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_qvb0z2tr72_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_i2ht4ljq1t_click = throttle(async (...params) => {
  showState.vid_i2ht4ljq1t_visible = false;
  showState.vid_9351xbiw30_visible = false;
  showState.vid_chp28ng6fc_visible = true;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_chp28ng6fc_click = throttle(async (...params) => {
  showState.vid_i2ht4ljq1t_visible = true;
  showState.vid_9351xbiw30_visible = true;
  showState.vid_chp28ng6fc_visible = false;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_pljcwbceg8_click = throttle(async (...params) => {
  vid_afcizir8di_props.visible = true;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_9stxwa9aho_click = throttle(async (...params) => {
  vid_hkf53ba1mm_props.visible = true;
  await dataConnector_conn_7knelg72xf()
  await dataConnector_conn_hg6t3d5noh()
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_h4ydkfxkhj_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_h4ydkfxkhj_props.rt_tableConfig.pagination.current = current;
  vid_h4ydkfxkhj_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_h4ydkfxkhj_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_h4ydkfxkhj_props.systemSort = sorterList;
  vid_h4ydkfxkhj_props.sorter = sorterValue;
  await dataConnector_conn_x15xmrsj19()
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_qcj6sty07m 事件
  */
  let handle_vid_h4ydkfxkhj_clickBtn_qcj6sty07m = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_h4ydkfxkhj_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rxnm8wuq62 事件
  */
  let handle_vid_h4ydkfxkhj_clickBtn_rxnm8wuq62 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_h4ydkfxkhj_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_lit9gdlxmx 事件
  */
  let handle_vid_h4ydkfxkhj_clickBtn_lit9gdlxmx = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_h4ydkfxkhj_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_t09vm9rpst 事件
  */
  let handle_vid_h4ydkfxkhj_clickBtn_t09vm9rpst = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_h4ydkfxkhj_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_0b20flva7b 事件
  */
  let handle_vid_h4ydkfxkhj_clickBtn_0b20flva7b = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_h4ydkfxkhj_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_tfdys2yv27_change = throttle(async (...params) => {
  const [,option] = params;
  vid_tfdys2yv27_props.selected.label = option?.label;
  vid_tfdys2yv27_props.selected.value = option?.value;
  vid_tfdys2yv27_props.selected.option = option;
  vid_tfdys2yv27_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_tfdys2yv27_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_tfdys2yv27_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 focus 事件
  */
  let handle_vid_qz4a31s4ec_focus = throttle(async (...params) => {
  await dataConnector_conn_83jcf2ob83()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_qz4a31s4ec_change = throttle(async (...params) => {
  const [,option] = params;
  vid_qz4a31s4ec_props.selected.label = option?.label;
  vid_qz4a31s4ec_props.selected.value = option?.value;
  vid_qz4a31s4ec_props.selected.option = option;
  vid_qz4a31s4ec_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_qz4a31s4ec_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_qz4a31s4ec_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 focus 事件
  */
  let handle_vid_dc6qyecxin_focus = throttle(async (...params) => {
  await dataConnector_conn_l44cgtfoag()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_dc6qyecxin_change = throttle(async (...params) => {
  const [,option] = params;
  vid_dc6qyecxin_props.selected.label = option?.label;
  vid_dc6qyecxin_props.selected.value = option?.value;
  vid_dc6qyecxin_props.selected.option = option;
  vid_dc6qyecxin_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_dc6qyecxin_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_dc6qyecxin_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 focus 事件
  */
  let handle_vid_lejnr9eg5j_focus = throttle(async (...params) => {
  await dataConnector_conn_mqkpcxcx3u()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_lejnr9eg5j_change = throttle(async (...params) => {
  const [,option] = params;
  vid_lejnr9eg5j_props.selected.label = option?.label;
  vid_lejnr9eg5j_props.selected.value = option?.value;
  vid_lejnr9eg5j_props.selected.option = option;
  vid_lejnr9eg5j_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_lejnr9eg5j_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_lejnr9eg5j_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_5kc43qdc7l_click = throttle(async (...params) => {
  await dataConnector_conn_bg5p5hhcyg()
  await dataConnector_conn_qvkp7x8evl()
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_o22b1s6q8s_click = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_d10ddmizcp_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  await dataConnector_conn_bg5p5hhcyg()
  await dataConnector_conn_qvkp7x8evl()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_nl8vhqj1u2_change = throttle(async (...params) => {
  const [,option] = params;
  vid_nl8vhqj1u2_props.selected.label = option?.label;
  vid_nl8vhqj1u2_props.selected.value = option?.value;
  vid_nl8vhqj1u2_props.selected.option = option;
  vid_nl8vhqj1u2_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_nl8vhqj1u2_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_nl8vhqj1u2_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_24ramrd9fn_click = throttle(async (...params) => {
  vid_9f1tbhl4h8_props.visible = true;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_oeqpfbgizb 事件
  */
  let handle_vid_xrk0mz30yy_clickBtn_oeqpfbgizb = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_xrk0mz30yy_props.currentRow = record;
  vid_ui8qtu2f2h_props.visible = true;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_rz02p6dfu5 事件
  */
  let handle_vid_xrk0mz30yy_clickBtn_rz02p6dfu5 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_xrk0mz30yy_props.currentRow = record;
  vid_9crzoz0cys_props.visible = true;
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_xrk0mz30yy_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_xrk0mz30yy_props.rt_tableConfig.pagination.current = current;
  vid_xrk0mz30yy_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_xrk0mz30yy_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_xrk0mz30yy_props.systemSort = sorterList;
  vid_xrk0mz30yy_props.sorter = sorterValue;
  await dataConnector_conn_qvkp7x8evl()
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_nuqq4qhoz8 事件
  */
  let handle_vid_xrk0mz30yy_clickBtn_nuqq4qhoz8 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_xrk0mz30yy_props.currentRow = record;
  vid_g58dms2vll_props.visible = true;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_3o43cqtal8 事件
  */
  let handle_vid_xrk0mz30yy_clickBtn_3o43cqtal8 = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_xrk0mz30yy_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_0k7borsedm 事件
  */
  let handle_vid_xrk0mz30yy_clickBtn_0k7borsedm = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_xrk0mz30yy_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_aw4ll60tme_click = throttle(async (...params) => {
  vid_74nuuvmbbh_props.visible = true;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_ki91nriw5u_click = throttle(async (...params) => {
  vid_kayafdcysa_props.visible = true;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7t9yvwo6rz 事件
  */
  let handle_vid_ea0vg4m7vo_clickBtn_7t9yvwo6rz = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_ea0vg4m7vo_props.currentRow = record;
  vid_ujuoy3urqm_props.visible = true;
  await dataConnector_conn_vn7ruhy3b8()
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_o6bss3511o 事件
  */
  let handle_vid_ea0vg4m7vo_clickBtn_o6bss3511o = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_ea0vg4m7vo_props.currentRow = record;
  vid_emxoj1ks3o_props.visible = true;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_jc22nsv2yr 事件
  */
  let handle_vid_ea0vg4m7vo_clickBtn_jc22nsv2yr = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_ea0vg4m7vo_props.currentRow = record;
  vid_lyqnvc72no_props.visible = true;
  await dataConnector_conn_9xhw4y5pfn()
  await dataConnector_conn_lcug1puwhf()
  await dataConnector_conn_ti68ou6lfu()
  await dataConnector_conn_vr5enw6446()
  await dataConnector_conn_q6ztv3obw3()
  await dataConnector_conn_mm1hgy00io()
  await dataConnector_conn_09bbltetan()
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_ea0vg4m7vo_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_ea0vg4m7vo_props.rt_tableConfig.pagination.current = current;
  vid_ea0vg4m7vo_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_ea0vg4m7vo_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_ea0vg4m7vo_props.systemSort = sorterList;
  vid_ea0vg4m7vo_props.sorter = sorterValue;
  await dataConnector_conn_bg5p5hhcyg()
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_1mrlj2f1al 事件
  */
  let handle_vid_ea0vg4m7vo_clickBtn_1mrlj2f1al = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_ea0vg4m7vo_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_7ydg1cup5a 事件
  */
  let handle_vid_ea0vg4m7vo_clickBtn_7ydg1cup5a = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_ea0vg4m7vo_props.currentRow = record;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_yssa4zftwp_click = throttle(async (...params) => {
  vid_jlz2iy5yjj_props.visible = true;
  await dataConnector_conn_hg6t3d5noh()
  }, 500)
  /**
  * 处理元素 输入框 的 change 事件
  */
  let handle_vid_ucdhgbwfk3_change = throttle(async (...params) => {
  await dataConnector_conn_mpmbzok2b4()
  }, 500)
  /**
  * 处理元素 树形控件 的 select 事件
  */
  let handle_vid_rzym3dfyuw_select = throttle(async (...params) => {
  const [selectedKeys, e] = params;
  const { selectedNodes = [], node = {} } = e, [singleValue] = selectedKeys, [singleNode] = selectedNodes;
  const { parent = {} } = node;
  vid_rzym3dfyuw_props.selected.title = selectedNodes.map((item) => item.projectName) ?? [];
  vid_rzym3dfyuw_props.selected.value = selectedKeys;
  vid_rzym3dfyuw_props.selected.option = selectedNodes;
  vid_rzym3dfyuw_props.selected.singleValue = singleValue;
  vid_rzym3dfyuw_props.selected.singleLabel = singleNode?.title ?? '';
  // 存储树节点数据
  vid_rzym3dfyuw_props.clickNode.nodeParentKey = parent?.key ?? node?.key ?? '';
  vid_rzym3dfyuw_props.clickNode.nodeKey = node?.key ?? '';
  vid_rzym3dfyuw_props.clickNode.nodeTitle = node?.title ?? '';
  await customFunction_vas189t1er();
  await dataConnector_conn_lekr0gf5rr()
  await dataConnector_conn_bg5p5hhcyg()
  await dataConnector_conn_qvkp7x8evl()
  await dataConnector_conn_x15xmrsj19()
  }, 500)
  /* ========================== 组件事件处理方法 ========================== */


  /* -------------------------- 生命周期 -------------------------- */
  // 用于参数变更后重新执行自定义指令
      const queryUpdateFlag = ref(0);
      onMounted(() => { ;dataConnector_conn_gdawclleib()
  dataConnector_conn_mpmbzok2b4()
  dataConnector_conn_z0pio5iu43()
  dataConnector_conn_mr9kmlnah5()
  dataConnector_conn_bwclu26iao()
  dataConnector_conn_2h0xw86105()
  dataConnector_conn_v6h2yy9bbt()
  dataConnector_conn_uaq3fc3de9()

    });

    onUnmounted(() => {
      // 销毁定时器
      setTimeOutList.forEach(({ repeat, timer }) => {
        repeat ?  clearInterval(timer): clearTimeout(timer);
      });
    });

  /* ========================== 生命周期 ========================== */


  /* -------------------------- 数据关联处理 -------------------------- */





  /* -------------------------- 表单数据同步 -------------------------- */
  /* ========================== 表单数据同步 ========================== */

  /* ========================== 数据关联处理 ========================== */


  /* -------------------------- 不同组件自定义的处理逻辑 -------------------------- */
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_u3y9135udo_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_u3y9135udo'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_u3y9135udo_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_u3y9135udo_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_u3y9135udo_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_u3y9135udo_options.value(), rowGroupKeys,vid_u3y9135udo_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_u3y9135udo_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_u3y9135udo_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  immediateWatch(
    () => b_9uarvtwtzo?.y_vjlky54sp8,
    () => {
      if(!!handle_vid_sth9745oox_change) {
      const options = (vid_sth9745oox_options?.value() || []).find((item) => item.value === b_9uarvtwtzo?.y_vjlky54sp8 || item.label === b_9uarvtwtzo?.y_vjlky54sp8 )
        // 重置了表单，这里重置下拉框
        handle_vid_sth9745oox_change(b_9uarvtwtzo?.y_vjlky54sp8, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [b_9uarvtwtzo?.v_9cashjmttj, vid_op95sd13gl_options?.value()],
    () => {
      if(!!handle_vid_op95sd13gl_change) {
      const options = (vid_op95sd13gl_options?.value() || []).find((item) => item.value === b_9uarvtwtzo?.v_9cashjmttj || item.label === b_9uarvtwtzo?.v_9cashjmttj )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_op95sd13gl_change(b_9uarvtwtzo?.v_9cashjmttj, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [b_9uarvtwtzo?.b_8p43whz7fu, vid_bli3y5dska_options?.value()],
    () => {
      if(!!handle_vid_bli3y5dska_change) {
      const options = (vid_bli3y5dska_options?.value() || []).find((item) => item.value === b_9uarvtwtzo?.b_8p43whz7fu || item.label === b_9uarvtwtzo?.b_8p43whz7fu )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_bli3y5dska_change(b_9uarvtwtzo?.b_8p43whz7fu, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [b_9uarvtwtzo?.u_n1sphyrteu, vid_jljbkfk7m8_options?.value()],
    () => {
      if(!!handle_vid_jljbkfk7m8_change) {
      const options = (vid_jljbkfk7m8_options?.value() || []).find((item) => item.value === b_9uarvtwtzo?.u_n1sphyrteu || item.label === b_9uarvtwtzo?.u_n1sphyrteu )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_jljbkfk7m8_change(b_9uarvtwtzo?.u_n1sphyrteu, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [b_9uarvtwtzo?.a_g3q11ormum, vid_jhmsp1omgn_options?.value()],
    () => {
      if(!!handle_vid_jhmsp1omgn_change) {
      const options = (vid_jhmsp1omgn_options?.value() || []).find((item) => item.value === b_9uarvtwtzo?.a_g3q11ormum || item.label === b_9uarvtwtzo?.a_g3q11ormum )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_jhmsp1omgn_change(b_9uarvtwtzo?.a_g3q11ormum, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => c_55lo4f7tu7?.a_uvg8rfrpnh,
    () => {
      if(!!handle_vid_1dy1lfxsna_change) {
      const options = (vid_1dy1lfxsna_options?.value() || []).find((item) => item.value === c_55lo4f7tu7?.a_uvg8rfrpnh || item.label === c_55lo4f7tu7?.a_uvg8rfrpnh )
        // 重置了表单，这里重置下拉框
        handle_vid_1dy1lfxsna_change(c_55lo4f7tu7?.a_uvg8rfrpnh, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [c_55lo4f7tu7?.b_snwd70u8e7, vid_f924yn9zv0_options?.value()],
    () => {
      if(!!handle_vid_f924yn9zv0_change) {
      const options = (vid_f924yn9zv0_options?.value() || []).find((item) => item.value === c_55lo4f7tu7?.b_snwd70u8e7 || item.label === c_55lo4f7tu7?.b_snwd70u8e7 )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_f924yn9zv0_change(c_55lo4f7tu7?.b_snwd70u8e7, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [c_55lo4f7tu7?.v_cwsj2nxqg4, vid_s91z0jrn6n_options?.value()],
    () => {
      if(!!handle_vid_s91z0jrn6n_change) {
      const options = (vid_s91z0jrn6n_options?.value() || []).find((item) => item.value === c_55lo4f7tu7?.v_cwsj2nxqg4 || item.label === c_55lo4f7tu7?.v_cwsj2nxqg4 )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_s91z0jrn6n_change(c_55lo4f7tu7?.v_cwsj2nxqg4, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [c_55lo4f7tu7?.o_987ni38wqu, vid_qqjroo8awh_options?.value()],
    () => {
      if(!!handle_vid_qqjroo8awh_change) {
      const options = (vid_qqjroo8awh_options?.value() || []).find((item) => item.value === c_55lo4f7tu7?.o_987ni38wqu || item.label === c_55lo4f7tu7?.o_987ni38wqu )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_qqjroo8awh_change(c_55lo4f7tu7?.o_987ni38wqu, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [p_k07jx5bocd?.m_cp5zmq6rab, vid_pyppcfqy0i_options?.value()],
    () => {
      if(!!handle_vid_pyppcfqy0i_change) {
      const options = (vid_pyppcfqy0i_options?.value() || []).find((item) => item.value === p_k07jx5bocd?.m_cp5zmq6rab || item.label === p_k07jx5bocd?.m_cp5zmq6rab )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_pyppcfqy0i_change(p_k07jx5bocd?.m_cp5zmq6rab, {...options} || {})
      }
    }
  )
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_j1gz4cdo9y_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_j1gz4cdo9y'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_j1gz4cdo9y_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_j1gz4cdo9y_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_j1gz4cdo9y_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_j1gz4cdo9y_options.value(), rowGroupKeys,vid_j1gz4cdo9y_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_j1gz4cdo9y_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_j1gz4cdo9y_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_1e93e4wxa1_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_1e93e4wxa1'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_1e93e4wxa1_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_1e93e4wxa1_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_1e93e4wxa1_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_1e93e4wxa1_options.value(), rowGroupKeys,vid_1e93e4wxa1_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_1e93e4wxa1_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_1e93e4wxa1_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_bl8zxuphn2_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_bl8zxuphn2'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_bl8zxuphn2_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_bl8zxuphn2_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_bl8zxuphn2_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_bl8zxuphn2_options.value(), rowGroupKeys,vid_bl8zxuphn2_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_bl8zxuphn2_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_bl8zxuphn2_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_q4iurfb43l_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_q4iurfb43l'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_q4iurfb43l_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_q4iurfb43l_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_q4iurfb43l_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_q4iurfb43l_options.value(), rowGroupKeys,vid_q4iurfb43l_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_q4iurfb43l_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_q4iurfb43l_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_qequdcdegn_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_qequdcdegn'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_qequdcdegn_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_qequdcdegn_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_qequdcdegn_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_qequdcdegn_options.value(), rowGroupKeys,vid_qequdcdegn_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_qequdcdegn_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_qequdcdegn_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_jnyid3041z_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_jnyid3041z'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_jnyid3041z_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_jnyid3041z_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_jnyid3041z_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_jnyid3041z_options.value(), rowGroupKeys,vid_jnyid3041z_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_jnyid3041z_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_jnyid3041z_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_8s72c1zxsf_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_8s72c1zxsf'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_8s72c1zxsf_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_8s72c1zxsf_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_8s72c1zxsf_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_8s72c1zxsf_options.value(), rowGroupKeys,vid_8s72c1zxsf_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_8s72c1zxsf_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_8s72c1zxsf_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_rks1qpqlib_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_rks1qpqlib'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_rks1qpqlib_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_rks1qpqlib_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_rks1qpqlib_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_rks1qpqlib_options.value(), rowGroupKeys,vid_rks1qpqlib_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_rks1qpqlib_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_rks1qpqlib_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })
  immediateWatch(
    () => [n_46v5crtmxg?.o_pjua39nomn, vid_8ggecxpznd_options?.value()],
    () => {
      if(!!handle_vid_8ggecxpznd_change) {
      const options = (vid_8ggecxpznd_options?.value() || []).find((item) => item.value === n_46v5crtmxg?.o_pjua39nomn || item.label === n_46v5crtmxg?.o_pjua39nomn )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_8ggecxpznd_change(n_46v5crtmxg?.o_pjua39nomn, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [n_46v5crtmxg?.d_kf78mkndbe, vid_4ep7x2c07v_options?.value()],
    () => {
      if(!!handle_vid_4ep7x2c07v_change) {
      const options = (vid_4ep7x2c07v_options?.value() || []).find((item) => item.value === n_46v5crtmxg?.d_kf78mkndbe || item.label === n_46v5crtmxg?.d_kf78mkndbe )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_4ep7x2c07v_change(n_46v5crtmxg?.d_kf78mkndbe, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [n_46v5crtmxg?.p_q2yk2wqav6, vid_5ckqr8oxpq_options?.value()],
    () => {
      if(!!handle_vid_5ckqr8oxpq_change) {
      const options = (vid_5ckqr8oxpq_options?.value() || []).find((item) => item.value === n_46v5crtmxg?.p_q2yk2wqav6 || item.label === n_46v5crtmxg?.p_q2yk2wqav6 )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_5ckqr8oxpq_change(n_46v5crtmxg?.p_q2yk2wqav6, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [n_46v5crtmxg?.y_x1ef8en41h, vid_wvtox7jkqe_options?.value()],
    () => {
      if(!!handle_vid_wvtox7jkqe_change) {
      const options = (vid_wvtox7jkqe_options?.value() || []).find((item) => item.value === n_46v5crtmxg?.y_x1ef8en41h || item.label === n_46v5crtmxg?.y_x1ef8en41h )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_wvtox7jkqe_change(n_46v5crtmxg?.y_x1ef8en41h, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => n_46v5crtmxg?.y_yphdlrbmny,
    () => {
      if(!!handle_vid_hyw8pv81og_change) {
      const options = (vid_hyw8pv81og_options?.value() || []).find((item) => item.value === n_46v5crtmxg?.y_yphdlrbmny || item.label === n_46v5crtmxg?.y_yphdlrbmny )
        // 重置了表单，这里重置下拉框
        handle_vid_hyw8pv81og_change(n_46v5crtmxg?.y_yphdlrbmny, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [k_y80wm4oz2j?.j_cory7m4cki, vid_e3jxf416hx_options?.value()],
    () => {
      if(!!handle_vid_e3jxf416hx_change) {
      const options = (vid_e3jxf416hx_options?.value() || []).find((item) => item.value === k_y80wm4oz2j?.j_cory7m4cki || item.label === k_y80wm4oz2j?.j_cory7m4cki )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_e3jxf416hx_change(k_y80wm4oz2j?.j_cory7m4cki, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [k_y80wm4oz2j?.k_12cajpmxf1, vid_a8y8q0rvsj_options?.value()],
    () => {
      if(!!handle_vid_a8y8q0rvsj_change) {
      const options = (vid_a8y8q0rvsj_options?.value() || []).find((item) => item.value === k_y80wm4oz2j?.k_12cajpmxf1 || item.label === k_y80wm4oz2j?.k_12cajpmxf1 )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_a8y8q0rvsj_change(k_y80wm4oz2j?.k_12cajpmxf1, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [k_y80wm4oz2j?.t_209sj57mko, vid_p459smma70_options?.value()],
    () => {
      if(!!handle_vid_p459smma70_change) {
      const options = (vid_p459smma70_options?.value() || []).find((item) => item.value === k_y80wm4oz2j?.t_209sj57mko || item.label === k_y80wm4oz2j?.t_209sj57mko )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_p459smma70_change(k_y80wm4oz2j?.t_209sj57mko, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [k_y80wm4oz2j?.a_bmp3qioph4, vid_yibvw5rcmz_options?.value()],
    () => {
      if(!!handle_vid_yibvw5rcmz_change) {
      const options = (vid_yibvw5rcmz_options?.value() || []).find((item) => item.value === k_y80wm4oz2j?.a_bmp3qioph4 || item.label === k_y80wm4oz2j?.a_bmp3qioph4 )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_yibvw5rcmz_change(k_y80wm4oz2j?.a_bmp3qioph4, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => k_y80wm4oz2j?.k_qz1ske7f6t,
    () => {
      if(!!handle_vid_zt2wam5umw_change) {
      const options = (vid_zt2wam5umw_options?.value() || []).find((item) => item.value === k_y80wm4oz2j?.k_qz1ske7f6t || item.label === k_y80wm4oz2j?.k_qz1ske7f6t )
        // 重置了表单，这里重置下拉框
        handle_vid_zt2wam5umw_change(k_y80wm4oz2j?.k_qz1ske7f6t, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => a_3lhu5f974z?.taskDependencyArray,
    () => {
      if(!!handle_vid_rwmvgn46dt_change) {
      const options = (vid_rwmvgn46dt_options?.value() || []).find((item) => item.value === a_3lhu5f974z?.taskDependencyArray || item.label === a_3lhu5f974z?.taskDependencyArray )
        // 重置了表单，这里重置下拉框
        handle_vid_rwmvgn46dt_change(a_3lhu5f974z?.taskDependencyArray, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => a_3lhu5f974z?.taskParticipantArray,
    () => {
      if(!!handle_vid_727os2vxmi_change) {
      const options = (vid_727os2vxmi_options?.value() || []).find((item) => item.value === a_3lhu5f974z?.taskParticipantArray || item.label === a_3lhu5f974z?.taskParticipantArray )
        // 重置了表单，这里重置下拉框
        handle_vid_727os2vxmi_change(a_3lhu5f974z?.taskParticipantArray, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [a_3lhu5f974z?.taskOwner, vid_q7deknz720_options?.value()],
    () => {
      if(!!handle_vid_q7deknz720_change) {
      const options = (vid_q7deknz720_options?.value() || []).find((item) => item.value === a_3lhu5f974z?.taskOwner || item.label === a_3lhu5f974z?.taskOwner )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_q7deknz720_change(a_3lhu5f974z?.taskOwner, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [a_3lhu5f974z?.taskStatus, vid_aws7k3cemp_options?.value()],
    () => {
      if(!!handle_vid_aws7k3cemp_change) {
      const options = (vid_aws7k3cemp_options?.value() || []).find((item) => item.value === a_3lhu5f974z?.taskStatus || item.label === a_3lhu5f974z?.taskStatus )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_aws7k3cemp_change(a_3lhu5f974z?.taskStatus, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [a_3lhu5f974z?.t_qkz3lpi7yi, vid_68rzqstn2n_options?.value()],
    () => {
      if(!!handle_vid_68rzqstn2n_change) {
      const options = (vid_68rzqstn2n_options?.value() || []).find((item) => item.value === a_3lhu5f974z?.t_qkz3lpi7yi || item.label === a_3lhu5f974z?.t_qkz3lpi7yi )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_68rzqstn2n_change(a_3lhu5f974z?.t_qkz3lpi7yi, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => v_30blfqiwu1?.taskDependencyArray,
    () => {
      if(!!handle_vid_zcxsmd50is_change) {
      const options = (vid_zcxsmd50is_options?.value() || []).find((item) => item.value === v_30blfqiwu1?.taskDependencyArray || item.label === v_30blfqiwu1?.taskDependencyArray )
        // 重置了表单，这里重置下拉框
        handle_vid_zcxsmd50is_change(v_30blfqiwu1?.taskDependencyArray, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => v_30blfqiwu1?.taskParticipantArray,
    () => {
      if(!!handle_vid_ec0kwncf8s_change) {
      const options = (vid_ec0kwncf8s_options?.value() || []).find((item) => item.value === v_30blfqiwu1?.taskParticipantArray || item.label === v_30blfqiwu1?.taskParticipantArray )
        // 重置了表单，这里重置下拉框
        handle_vid_ec0kwncf8s_change(v_30blfqiwu1?.taskParticipantArray, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [v_30blfqiwu1?.taskOwner, vid_wpwf9x791a_options?.value()],
    () => {
      if(!!handle_vid_wpwf9x791a_change) {
      const options = (vid_wpwf9x791a_options?.value() || []).find((item) => item.value === v_30blfqiwu1?.taskOwner || item.label === v_30blfqiwu1?.taskOwner )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_wpwf9x791a_change(v_30blfqiwu1?.taskOwner, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [v_30blfqiwu1?.j_mi90y3a50l, vid_qvb0z2tr72_options?.value()],
    () => {
      if(!!handle_vid_qvb0z2tr72_change) {
      const options = (vid_qvb0z2tr72_options?.value() || []).find((item) => item.value === v_30blfqiwu1?.j_mi90y3a50l || item.label === v_30blfqiwu1?.j_mi90y3a50l )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_qvb0z2tr72_change(v_30blfqiwu1?.j_mi90y3a50l, {...options} || {})
      }
    }
  )
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_h4ydkfxkhj_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_h4ydkfxkhj'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_h4ydkfxkhj_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_h4ydkfxkhj_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = ['milepostPeriod', 'milepostName'];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_h4ydkfxkhj_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_h4ydkfxkhj_options.value(), rowGroupKeys,vid_h4ydkfxkhj_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_h4ydkfxkhj_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_h4ydkfxkhj_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })


        // 补充一个watch，用于监听删除最后一页最后一条数据的情况，然后重新加载数据
        watch(() => dataConnector_conn_x15xmrsj19_response?.value?.taskResourceDtoList, (newValue) => {
          const current = vid_h4ydkfxkhj_props.rt_tableConfig.pagination.current;
          if (!newValue?.length && current > 1) {
            vid_h4ydkfxkhj_props.rt_tableConfig.pagination.current = current - 1;
            dataConnector_conn_x15xmrsj19();
          }
        });
  immediateWatch(
    () => [g_d3kpj6k5e2?.taskStatus, vid_tfdys2yv27_options?.value()],
    () => {
      if(!!handle_vid_tfdys2yv27_change) {
      const options = (vid_tfdys2yv27_options?.value() || []).find((item) => item.value === g_d3kpj6k5e2?.taskStatus || item.label === g_d3kpj6k5e2?.taskStatus )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_tfdys2yv27_change(g_d3kpj6k5e2?.taskStatus, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [g_d3kpj6k5e2?.taskParticipant, vid_qz4a31s4ec_options?.value()],
    () => {
      if(!!handle_vid_qz4a31s4ec_change) {
      const options = (vid_qz4a31s4ec_options?.value() || []).find((item) => item.value === g_d3kpj6k5e2?.taskParticipant || item.label === g_d3kpj6k5e2?.taskParticipant )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_qz4a31s4ec_change(g_d3kpj6k5e2?.taskParticipant, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [g_d3kpj6k5e2?.taskOwner, vid_dc6qyecxin_options?.value()],
    () => {
      if(!!handle_vid_dc6qyecxin_change) {
      const options = (vid_dc6qyecxin_options?.value() || []).find((item) => item.value === g_d3kpj6k5e2?.taskOwner || item.label === g_d3kpj6k5e2?.taskOwner )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_dc6qyecxin_change(g_d3kpj6k5e2?.taskOwner, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [g_d3kpj6k5e2?.milepostName, vid_lejnr9eg5j_options?.value()],
    () => {
      if(!!handle_vid_lejnr9eg5j_change) {
      const options = (vid_lejnr9eg5j_options?.value() || []).find((item) => item.value === g_d3kpj6k5e2?.milepostName || item.label === g_d3kpj6k5e2?.milepostName )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_lejnr9eg5j_change(g_d3kpj6k5e2?.milepostName, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [g_d3kpj6k5e2?.stateInput, vid_nl8vhqj1u2_options?.value()],
    () => {
      if(!!handle_vid_nl8vhqj1u2_change) {
      const options = (vid_nl8vhqj1u2_options?.value() || []).find((item) => item.value === g_d3kpj6k5e2?.stateInput || item.label === g_d3kpj6k5e2?.stateInput )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_nl8vhqj1u2_change(g_d3kpj6k5e2?.stateInput, {...options} || {})
      }
    }
  )
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_xrk0mz30yy_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_xrk0mz30yy'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_xrk0mz30yy_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_xrk0mz30yy_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_xrk0mz30yy_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_xrk0mz30yy_options.value(), rowGroupKeys,vid_xrk0mz30yy_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_xrk0mz30yy_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_xrk0mz30yy_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })


        // 补充一个watch，用于监听删除最后一页最后一条数据的情况，然后重新加载数据
        watch(() => dataConnector_conn_qvkp7x8evl_response?.value?.dataList, (newValue) => {
          const current = vid_xrk0mz30yy_props.rt_tableConfig.pagination.current;
          if (!newValue?.length && current > 1) {
            vid_xrk0mz30yy_props.rt_tableConfig.pagination.current = current - 1;
            dataConnector_conn_qvkp7x8evl();
          }
        });
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_ea0vg4m7vo_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_ea0vg4m7vo'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_ea0vg4m7vo_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_ea0vg4m7vo_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_ea0vg4m7vo_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_ea0vg4m7vo_options.value(), rowGroupKeys,vid_ea0vg4m7vo_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_ea0vg4m7vo_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_ea0vg4m7vo_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })


        // 补充一个watch，用于监听删除最后一页最后一条数据的情况，然后重新加载数据
        watch(() => dataConnector_conn_bg5p5hhcyg_response?.value?.dataList, (newValue) => {
          const current = vid_ea0vg4m7vo_props.rt_tableConfig.pagination.current;
          if (!newValue?.length && current > 1) {
            vid_ea0vg4m7vo_props.rt_tableConfig.pagination.current = current - 1;
            dataConnector_conn_bg5p5hhcyg();
          }
        });
  const vid_rzym3dfyuw_style = computed(() => {
        return { "--background-hover": "#F5F5F5", "--background-select": "#EBF1FF" }
      });


      const vid_rzym3dfyuw_style_span = computed(() => {
        return { marginLeft: '2px', color: "#595959" }
      });
  /**
   * 生成分组字段合并单元格的配置：返回值为一个数字数组，数组里面每一项即为该字段当前行的rowSpan配置
   * @param {Array} 表格中的数据
   * @param {Array} 当前分组字段的列表，注：为了保证优先级低的字段合并后是优先级高的字段合并后的子集，需要把比该字段优先级高的分组字段按顺序放在该字段前面；例如：所有分组字段列表为['grade', 'age', 'score']，要生成age字段的合并单元格配置，则该参数需要传['grade', 'age']
   * @returns {Array} 该字段合并单元格的rowSpan配置，例：[1, 1, 2, 0, 1]
   */
  function generateRowSpanList(dataSource, groupKeys,editRecordMap) {
    if (!dataSource || !dataSource.length) {
      return [];
    }

    const rowSpanList = [];

    // 判断单元格是否需要合并的临时值：使用表格数据最后一行进行初始化（表格数据的遍历是倒序进行的）
    let tempValue = getGroupValue(dataSource[dataSource.length - 1], groupKeys);
    // 记录需要合并单元格的数量
    let tempValueCount = 0;

    // 倒序遍历数组，以保证使用最前面一条数据合并单元格
    for (let index = dataSource.length - 1; index >= 0; index--) {
      rowSpanList[index] = 0;
      const groupValue = getGroupValue(dataSource[index], groupKeys);
      // 如果当前行的分组数据跟上一行一致，则将标记数量加一；否则将标记数量的当前值赋给上一条数据，并重置临时值和标记数量
      if(editRecordMap && editRecordMap[index]){ //如果当前行是编辑行
        rowSpanList[index + 1] = tempValueCount;
        tempValue = "";
        tempValueCount=1;
      }
      else if (groupValue === tempValue) {
        tempValueCount++;
      } else {
        rowSpanList[index + 1] = tempValueCount;
        tempValue = groupValue;
        tempValueCount = 1;
      }

      // 遍历到最后一行，将当前的标记数量赋给当前行
      if (index === 0) {
        rowSpanList[index] = tempValueCount;
      }
    }

    return rowSpanList;
  }

  /**
   * 根据分组字段列表生成当前数据行的分组值
   * @param {Object} 当前数据行
   * @param {Array} 分组字段列表
   * @returns {String} 拼装的当前数据行的分组值，例：record为{ age: 7, grade: '一年级', name: '小赵' }，groupKeys为['grade', 'age']，则拼装后的返回值为'一年级__$__7'
   */
  function getGroupValue(record, groupKeys) {
    const groupValueList = [];
    groupKeys.forEach(groupKey => {
      let val = record[groupKey]
      if (isArray(val)) {
        val = record[groupKey + '_labels']
      } else if (isObject(val)) {
        console.warn('警告表格列数据为object，可能导致行合并异常，列key为：'+ groupKey,val)
      }
      groupValueList.push(`${val}`);
    });
    return groupValueList.join('__$__');
  }

  /**
   * 将列表数据转换成树状数据
   * @param {Array} 原始的列表数据
   * @param {String|Number} 列表数据的唯一key
   * @param {String|Number} 列表数据转成树时的父级id
  */
  function convertListToTree(list, key, parentKey) {
    const clonedList = cloneDeep(list || []);

    // 遍历列表数据，生成树节点的map：key为列表数据的唯一key，value为列表当前行的数据
    const treeNodeMap = {};
    clonedList.forEach(item => {
      treeNodeMap[item[key]] = item;
    });

    const treeDataList = [];
    clonedList.forEach(item => {
      // 如果当前行数据的父级id不在树节点的map中，则当前数据为根节点数据，将其加入最终树形数据的列表；否则将其放入其父节点数据的children中
      if (!treeNodeMap[item[parentKey]]) {
        treeDataList.push(item);
      } else {
        if (!treeNodeMap[item[parentKey]].children) {
          treeNodeMap[item[parentKey]].children = [];
        }
        treeNodeMap[item[parentKey]].children.push(item);
      }
    });

    return treeDataList;
  }

  /**
   * 表格列宽伸缩处理，使用indexedDB缓存伸缩后的列宽度
   */
  const handleResizeColumn = (w, col, vid) => {
    col.width = w;
    
    UserTableRecords.saveTableRecords(col, localGet('al__UID'), vid)
    
  }
  /* ========================== 不同组件自定义的处理逻辑 ========================== */


  // ================================定制化逻辑========================================
  import * as echarts from 'echarts'
        const state = reactive({
          apiData: {},
          value1: 'time',
          value2: 'time',
          value3: 'time'
        })

        const chart1 = ref(null)
        const chart2 = ref(null)
        const chart3 = ref(null)
        const chart4 = ref(null)
        const chart5 = ref(null)
        const chart6 = ref(null)
        const chart7 = ref(null)
        const chart8 = ref(null)

        function genChart1(data) {
          const { completeTask, started, delay, notStarted, totalTasks } = data

          const option = {
            tooltip: {
              trigger: 'axis',
              axisPointer: {
                // Use axis to trigger tooltip
                type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
              }
            },
            legend: {
              top: '5%'
            },
            color: ['#1AD52D', '#73B3FF', '#FF0000', '#F2BD42'],
            grid: {
              left: '3%',
              right: '4%',
              bottom: '3%',
              containLabel: true
            },
            xAxis: {
              type: 'value',
              max: totalTasks,
              axisLabel: {
                show: true
                // formatter: (value, index: number) => {
                //   return totalTasks ? `${index * 20} %` : ''
                // }
              }
            },
            yAxis: {
              type: 'category',
              data: ['项目进度']
            },
            series: [
              {
                name: '已完成任务',
                type: 'bar',
                stack: 'total',
                barWidth: 40,
                label: {
                  show: true
                },
                emphasis: {
                  focus: 'series'
                },
                data: [completeTask]
              },
              {
                name: '正常开发任务',
                type: 'bar',
                stack: 'total',
                label: {
                  show: true
                },
                emphasis: {
                  focus: 'series'
                },
                data: [started]
              },
              {
                name: '延期任务',
                type: 'bar',
                stack: 'total',
                label: {
                  show: true
                },
                emphasis: {
                  focus: 'series'
                },
                data: [delay]
              },
              {
                name: '待开发任务',
                type: 'bar',
                stack: 'total',
                label: {
                  show: true
                },
                emphasis: {
                  focus: 'series'
                },
                data: [notStarted]
              }
            ]
          }
          echarts.init(chart1.value).setOption(option)
        }
        function genChart2(data) {
          const { projectBudget, work, rate } = data
          const center = ['44%', '80%']
          const option = {
            series: [
              {
                type: 'gauge',
                radius: '120%',
                center,
                startAngle: 180,
                endAngle: -0,
                min: 0,
                max: projectBudget,
                splitNumber: 12,
                itemStyle: {
                  color: '#EBF1FF'
                },
                progress: {
                  show: true,
                  width: 30
                },
                pointer: {
                  show: false
                },
                axisLine: {
                  lineStyle: {
                    width: 30
                  }
                },
                axisTick: {
                  distance: -45,
                  splitNumber: 5,
                  lineStyle: {
                    width: 1,
                    color: '#999'
                  }
                },
                splitLine: {
                  distance: -52,
                  length: 14,
                  lineStyle: {
                    width: 1,
                    color: '#999'
                  }
                },
                axisLabel: {
                  show: false
                },
                anchor: {
                  show: false
                },
                title: {
                  show: false
                },
                detail: {
                  valueAnimation: true,
                  width: '60%',
                  lineHeight: 40,
                  borderRadius: 8,
                  offsetCenter: [0, '-15%'],
                  fontSize: 20,
                  fontWeight: 'bolder',
                  formatter: function () {
                    return '占比: {unit|' + rate.toFixed(0) + '%}'
                  },
                  rich: {
                    unit: {
                      fontSize: 26,
                      color: '#9AB8FF'
                    }
                  }
                },
                data: [
                  {
                    value: work
                  }
                ]
              },
              {
                type: 'gauge',
                radius: '120%',
                center,
                startAngle: 180,
                endAngle: -0,
                min: 0,
                max: projectBudget,
                itemStyle: {
                  color: '#3875FF'
                },
                progress: {
                  show: true,
                  width: 8
                },
                pointer: {
                  show: false
                },
                axisLine: {
                  show: false
                },
                axisTick: {
                  show: false
                },
                splitLine: {
                  show: false
                },
                axisLabel: {
                  show: false
                },
                detail: {
                  show: false
                },
                data: [
                  {
                    value: work
                  }
                ]
              }
            ]
          }
          echarts.init(chart2.value).setOption(option)
        }
        function genChart3(data) {
          const option = {
            tooltip: {
              trigger: 'item'
            },
            legend: {
              type: 'scroll',
              orient: 'vertical',
              right: 10,
              top: 'center',
              bottom: 20
            },
            color: ['#D95040', '#5087EC', '#68BBC4', '#58A55C', '#F2BD42', '#EE752F'],
            series: [
              {
                name: '',
                type: 'pie',
                center: ['40%', '50%'],
                radius: ['40%', '70%'],
                avoidLabelOverlap: false,
                itemStyle: {
                  borderRadius: 10,
                  borderColor: '#fff',
                  borderWidth: 2
                },
                label: {
                  show: false,
                  position: 'center'
                },
                emphasis: {
                  label: {
                    show: false
                  }
                },
                labelLine: {
                  show: false
                },
                data: (data ?? []).map(item => {
                  return { value: item.count, name: item.role }
                })
              }
            ]
          }
          echarts.init(chart3.value).setOption(option)
        }
        function genChart4(data) {
          const option = {
            color: ['#D95040', '#5087EC', '#68BBC4', '#58A55C', '#F2BD42', '#EE752F'],
            tooltip: {
              trigger: 'item'
            },
            legend: {
              show: false
            },
            series: [
              {
                name: '',
                type: 'pie',
                radius: ['40%', '70%'],
                avoidLabelOverlap: false,
                itemStyle: {
                  borderRadius: 10,
                  borderColor: '#fff',
                  borderWidth: 2
                },
                emphasis: {
                  label: {
                    show: false
                  }
                },
                data: (data ?? []).map(item => {
                  return { value: item.roleCost, name: item.role }
                })
              }
            ]
          }
          echarts.init(chart4.value).setOption(option)
        }
        function genChart5(data) {
          const option = {
            color: ['#5087EC', '#68BBC4', '#58A55C'],
            tooltip: {
              trigger: 'axis',
              axisPointer: {
                type: 'shadow'
              }
            },
            grid: {
              left: '3%',
              right: '4%',
              bottom: '3%',
              containLabel: true
            },
            xAxis: [
              {
                type: 'category',
                data: (data ?? []).map(item => item.role),
                axisTick: {
                  alignWithLabel: true
                }
              }
            ],
            yAxis: [
              {
                type: 'value',
                axisLabel: {
                  formatter: '{value} 人天'
                }
              }
            ],
            series: [
              {
                type: 'bar',
                barWidth: '30',
                data: (data ?? []).map(item => item.workingHours)
              }
            ]
          }
          echarts.init(chart5.value).setOption(option)
        }
        function genChart6() {
          const data = state.apiData.milestoneBudgetDtoList || {}
          const option = {
            color: ['#5087EC', '#68BBC4', '#58A55C'],
            tooltip: {
              trigger: 'axis',
              axisPointer: {
                type: 'shadow'
              }
            },
            legend: {},
            grid: {
              left: '3%',
              right: '4%',
              bottom: '3%',
              containLabel: true
            },
            yAxis: {
              type: 'value',
              boundaryGap: [0, 0.01],
              axisLabel: {
                formatter: `{value} ${state.value1 === 'time' ? '小时' : '元'}`
              }
            },
            xAxis: {
              type: 'category',
              data: (data ?? []).map(item => item.milepostName)
            },
            series: [
              {
                name: '预计',
                barWidth: 50,
                type: 'bar',
                data: (data ?? []).map(item => (state.value1 === 'time' ? item.estimateHours : item.milepostBudget))
              },
              {
                name: '实际',
                barWidth: 50,
                type: 'bar',
                data: (data ?? []).map(item => (state.value1 === 'time' ? item.workingHours : item.actualResources))
              }
            ]
          }
          echarts.init(chart6.value).setOption(option)
        }
        function genChart7() {
          const data = state.apiData.projectInputDtoList
          const option = {
            color: ['#5087EC', '#68BBC4', '#58A55C'],
            grid: {
              left: '3%',
              right: '4%',
              bottom: '3%',
              containLabel: true
            },
            tooltip: {
              trigger: 'axis'
            },
            xAxis: {
              type: 'category',
              data: (data ?? []).map(item => item.month)
            },
            yAxis: {
              type: 'value',
              axisLabel: {
                formatter: `{value} ${state.value2 === 'time' ? '小时' : '元'}`
              }
            },
            series: [
              {
                data: (data ?? []).map(item => (state.value2 === 'time' ? item.workingHour : item.resources)),
                type: 'line'
              }
            ]
          }
          echarts.init(chart7.value).setOption(option)
        }
        function genChart8() {
          const data = state.apiData.personResourceDtoList
          const option = {
            color: ['#5087EC', '#68BBC4', '#58A55C'],
            tooltip: {
              trigger: 'axis',
              axisPointer: {
                // Use axis to trigger tooltip
                type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
              }
            },
            legend: {},
            grid: {
              left: '3%',
              right: '4%',
              bottom: '3%',
              containLabel: true
            },
            yAxis: {
              type: 'value',
              axisLabel: {
                formatter: `{value} ${state.value3 === 'time' ? '小时' : '元'}`
              }
            },
            xAxis: {
              type: 'category',
              data: (data ?? []).map(item => item.name)
            },
            series: [
              {
                name: '成本',
                type: 'bar',
                barWidth: '50',
                stack: 'total',
                label: {
                  show: false
                },
                emphasis: {
                  focus: 'series'
                },
                data: (data ?? []).map(item => (state.value3 === 'time' ? item.workHours : item.resources))
              },
              {
                name: '报销',
                type: 'bar',
                stack: 'total',
                label: {
                  show: false
                },
                emphasis: {
                  focus: 'series'
                },
                data: []
              },
              {
                name: '其他',
                type: 'bar',
                stack: 'total',
                label: {
                  show: false
                },
                emphasis: {
                  focus: 'series'
                },
                data: []
              }
            ]
          }
          echarts.init(chart8.value).setOption(option)
        }

        function getProjectAnalysisEchart() {
          if (vid_rzym3dfyuw_props?.selected?.singleValue) {
            get(
              `/solution-ppm/api/v2/built-in-system-ppm/project/${vid_rzym3dfyuw_props?.selected?.singleValue}/analysis`
            ).then(data => {
              state.apiData = data
              const { projectOverallProgressDto, projectBudgetDto, roleStatisticsDtoList } = data
              genChart1(projectOverallProgressDto)
              genChart2(projectBudgetDto)
              genChart3(roleStatisticsDtoList)
              genChart4(roleStatisticsDtoList)
              genChart5(roleStatisticsDtoList)
              genChart6()
              genChart7()
              genChart8()
            })
          }
        }
        watch(
          () => chart1.value,
          () => {
            if (chart1.value) {
              getProjectAnalysisEchart()
            }
          }
        )
</script>
<style lang="less" scoped>
  .page_root {
  width: 100%;
  height: 100%;
  overflow: auto;
  padding-top: 16px;
  padding-right: undefinedpx;
  padding-bottom: undefinedpx;
  padding-left: undefinedpx;
  background-color:#F5F6FA;
  }
  .page_root :deep(.@{ant-prefix}-spin-nested-loading),
  .page_root :deep(.@{ant-prefix}-spin-container)
   {
      height: 100%;
  }
  .page_root :deep(.@{ant-prefix}-spin-container .@{ant-prefix}-table-wrapper)
   {
      display: flex;
      flex-flow: column nowrap;
      justify-content: flex-start;
  }
  .page_root :deep(.@{ant-prefix}-table)
   {
    flex: auto;
    overflow: auto;
  }
  .table-moreBtn_down {
    overflow: hidden; white-space: nowrap; text-overflow: ellipsis; width: 100px;
  }

  .table-moreBtn_menu :deep(.table-moreBtn_menu-item):hover {
    background: #ebf1ff;
  }

  /*  表格树结构样式处理，展开按钮层级增加*/
  :deep(.@{ant-prefix}-table-row-expand-icon) {
    z-index: 1;
  }
  /*  表格树结构 由于每个表格项采用自定义组件，使用绝对定位布局，开启树结构导致显示异常，暂时使用层级定位位置 */
  :deep(.@{ant-prefix}-table-row-level-1 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 15px !important;
    width: calc(100% - 15px);
  }
  :deep(.@{ant-prefix}-table-row-level-2 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 30px !important;
    width: calc(100% - 30px);
  }
  :deep(.@{ant-prefix}-table-row-level-3 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 45px !important;
    width: calc(100% - 45px);
  }
  :deep(.@{ant-prefix}-table-row-level-4 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 60px !important;
    width: calc(100% - 60px);
  }

  /* 穿梭框改变默认样式，为根据组件样式控制左右栏宽度。 */
  :deep(.@{ant-prefix}-transfer-list)
   {
      height: 100%;
      width: 50%;
  }
  .vid_ygns5994y3{
      height:800px
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_u3y9135udo :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_u3y9135udo :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_u3y9135udo :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_u3y9135udo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_u3y9135udo{
      width:100%
  }
  .vid_u3y9135udo:active{
      width:100%
  }
  .vid_u3y9135udo:focus{
      width:100%
  }
  .vid_u3y9135udo:hover{
      width:100%
  }
  .vid_hxq20s6hb9{
      display:flex;
      align-items:center;
      justify-content:center;
      flex-wrap:undefined;
      padding-top:16px;
      border-top-style:solid;
      border-top-width:1px;
      border-top-color:#EBEBEB
  }
  .vid_dsff8lz7p6{
      margin-bottom:0px;
      padding-bottom:0px
  }
  .vid_hliu1bi8cg :deep(input) {
        cursor: undefined;
      }
  .vid_hliu1bi8cg{
      width:100%
  }
  .vid_9f1tbhl4h8{
      height:800px
  }
  .vid_7669jvrfsp{
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#D9D9D9
  }
  .vid_makauolruv{
      height:600px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_n7h6p0lgdd{
      width:100%
  }
  .vid_38e3vd3jol{
      margin-left:0px;
      padding-top:16px;
      padding-bottom:16px;
      padding-left:0px;
      border-style:none;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_wxa8j32blp{
      padding-top:24px;
      padding-left:0px
  }
  .vid_sth9745oox :deep(span) {
        cursor: undefined;
      }
  .vid_sth9745oox{
      width:100%
  }
  .vid_2tv9eo1f0a{
      margin-right:16px
  }
  .vid_4x40t1xe6m{
      margin-right:16px
  }
  .vid_op95sd13gl{
      width:100%
  }
  .vid_e27mgsvvcx :deep(input) {
        cursor: undefined;
      }
  .vid_e27mgsvvcx{
      width:100%
  }
  .vid_fkqo7gs441{
      margin-right:16px
  }
  .vid_2rjaiz6tyo :deep(input) {
        cursor: undefined;
      }
  .vid_2rjaiz6tyo{
      width:100%
  }
  .vid_okxp52mdig{
      margin-bottom:0px;
      padding-bottom:0px;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_677zer492d{
      margin-right:16px
  }
  .vid_bli3y5dska{
      width:100%
  }
  .vid_wkpd5oce4h{
      padding-left:8px;
      font-weight:600;
      line-height:16px;
      border-left-style:solid;
      border-left-width:4px;
      border-left-color:#3875FF
  }
  .vid_jljbkfk7m8{
      width:100%
  }
  .vid_opappgjpb9{
      margin-right:16px
  }
  .vid_jhmsp1omgn{
      width:100%
  }
  .vid_n5ise5idfj{
      height:800px
  }
  .vid_zfpjtdokyg{
      border-bottom-style:none;
      border-bottom-width:1px;
      border-bottom-color:#D9D9D9
  }
  .vid_4qy2cm8eyj{
      height:600px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_vlnjwcg05m{
      width:100%
  }
  .vid_r0f4o2vg7s{
      margin-left:0px;
      border-style:none;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_psrixokyep{
      padding-top:8px;
      padding-left:0px
  }
  .vid_1dy1lfxsna :deep(span) {
        cursor: undefined;
      }
  .vid_1dy1lfxsna{
      width:100%
  }
  .vid_ce7f67zs1k{
      margin-right:16px
  }
  .vid_18m82x024c{
      margin-right:16px
  }
  .vid_f924yn9zv0{
      width:100%
  }
  .vid_gh5ffic1bz :deep(input) {
        cursor: undefined;
      }
  .vid_gh5ffic1bz{
      width:100%
  }
  .vid_nzavltd38a{
      margin-right:16px
  }
  .vid_x4abimxw27 :deep(input) {
        cursor: undefined;
      }
  .vid_x4abimxw27{
      width:100%
  }
  .vid_3xo16u9vki{
      margin-bottom:0px;
      padding-bottom:0px;
      border-bottom-style:none;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_s91z0jrn6n{
      width:100%
  }
  .vid_9ysvi521ih{
      margin-right:16px
  }
  .vid_qqjroo8awh{
      width:100%
  }
  .vid_87olkd5s2v{
      margin-bottom:16px;
      padding-bottom:0px;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_x31rgplmsg{
      margin-right:16px
  }
  .vid_safmodqqf6{
      height:600px
  }
  .vid_0gfu15xti4{
      height:600px;
      overflow-x:scroll;
      overflow-y:scroll;
      border-bottom-style:none;
      border-bottom-width:1px
  }
  .vid_abcrl9lx08{
      width:100%;
      border-style:none;
      border-width:1px;
      border-color:#EBEBEB
  }
  .vid_l3r78hpqms{
      margin-left:0px;
      padding-top:16px;
      padding-bottom:16px;
      padding-left:0px;
      border-style:none;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_m59ftpd51m{
      padding-top:16px;
      padding-bottom:16px;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_6p656lzw9d{
      margin-bottom:0px;
      padding-bottom:0px
  }
  .vid_ueuxx3k7iu{
      margin-left:16px
  }
  .vid_pyppcfqy0i{
      width:100%
  }
  .vid_icuwd20mze{
      height:580px;
      overflow-x:scroll;
      overflow-y:scroll;
      margin-bottom:8px;
      padding-bottom:8px;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_j1gz4cdo9y :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_j1gz4cdo9y :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_j1gz4cdo9y :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_j1gz4cdo9y{
      width:100%
  }
  .vid_j1gz4cdo9y:active{
      width:100%
  }
  .vid_j1gz4cdo9y:focus{
      width:100%
  }
  .vid_j1gz4cdo9y:hover{
      width:100%
  }
  .vid_n46zb4sub7{
      display:flex;
      align-items:center;
      justify-content:center;
      flex-wrap:undefined;
      padding-top:16px;
      border-top-style:solid;
      border-top-width:1px;
      border-top-color:#EBEBEB
  }
  .vid_5rm2qtfkt8 :deep(span) {
        text-decoration: undefined;
        font-size: undefined;
        line-height: undefined;
        color: undefined;
      }
  .vid_nr65qywuao{
      width:100%;
      height:600px
  }
  .vid_nr65qywuao:active{
      width:100%
  }
  .vid_nr65qywuao:focus{
      width:100%
  }
  .vid_nr65qywuao:hover{
      width:100%
  }
  .vid_7bwihm892y{
      height:500px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_1e93e4wxa1 :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_1e93e4wxa1 :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_1e93e4wxa1 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_1e93e4wxa1{
      width:100%
  }
  .vid_1e93e4wxa1:active{
      width:100%
  }
  .vid_1e93e4wxa1:focus{
      width:100%
  }
  .vid_1e93e4wxa1:hover{
      width:100%
  }
  .vid_wuppwzw3zs{
      height:500px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_bl8zxuphn2 :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_bl8zxuphn2 :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_bl8zxuphn2 :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_bl8zxuphn2{
      width:100%
  }
  .vid_bl8zxuphn2:active{
      width:100%
  }
  .vid_bl8zxuphn2:focus{
      width:100%
  }
  .vid_bl8zxuphn2:hover{
      width:100%
  }
  .vid_nlkrdx6r1b{
      height:500px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_q4iurfb43l :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_q4iurfb43l :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_q4iurfb43l :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_q4iurfb43l{
      width:100%
  }
  .vid_q4iurfb43l:active{
      width:100%
  }
  .vid_q4iurfb43l:focus{
      width:100%
  }
  .vid_q4iurfb43l:hover{
      width:100%
  }
  .vid_ygzqpehkeu{
      height:500px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_qequdcdegn :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_qequdcdegn :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_qequdcdegn :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_qequdcdegn :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_qequdcdegn{
      width:100%
  }
  .vid_qequdcdegn:active{
      width:100%
  }
  .vid_qequdcdegn:focus{
      width:100%
  }
  .vid_qequdcdegn:hover{
      width:100%
  }
  .vid_mj8dbfszhq{
      height:500px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_jnyid3041z :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_jnyid3041z :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_jnyid3041z :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_jnyid3041z :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_jnyid3041z{
      width:100%
  }
  .vid_jnyid3041z:active{
      width:100%
  }
  .vid_jnyid3041z:focus{
      width:100%
  }
  .vid_jnyid3041z:hover{
      width:100%
  }
  .vid_lhabscif1v{
      height:500px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_8s72c1zxsf :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_8s72c1zxsf :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_8s72c1zxsf :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_8s72c1zxsf{
      width:100%
  }
  .vid_8s72c1zxsf:active{
      width:100%
  }
  .vid_8s72c1zxsf:focus{
      width:100%
  }
  .vid_8s72c1zxsf:hover{
      width:100%
  }
  .vid_tfy8tncllc{
      height:500px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_rks1qpqlib :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_rks1qpqlib :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_rks1qpqlib :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_rks1qpqlib{
      width:100%
  }
  .vid_rks1qpqlib:active{
      width:100%
  }
  .vid_rks1qpqlib:focus{
      width:100%
  }
  .vid_rks1qpqlib:hover{
      width:100%
  }
  .vid_wema9l87ch{
      height:530px;
      overflow-x:auto;
      overflow-y:auto
  }
  .vid_om6xs2pbh0{
      width:100%
  }
  .vid_18xhqrp6rr{
      margin-right:16px
  }
  .vid_1e02teh5vo{
      width:100%
  }
  .vid_li87dauspl{
      margin-right:16px
  }
  .vid_375mz1gml0{
      margin-right:16px
  }
  .vid_8ggecxpznd{
      width:100%
  }
  .vid_ra5tv26r18{
      margin-right:16px
  }
  .vid_s19eb77uma :deep(input) {
        cursor: undefined;
      }
  .vid_s19eb77uma{
      width:100%
  }
  .vid_gyd8djrme0{
      margin-right:16px
  }
  .vid_wy9y2nfvpy :deep(input) {
        cursor: undefined;
      }
  .vid_wy9y2nfvpy{
      width:100%
  }
  .vid_nn7q3zj5qd :deep(input) {
        cursor: undefined;
      }
  .vid_nn7q3zj5qd{
      width:100%
  }
  .vid_s4dm3zocaz{
      margin-right:16px
  }
  .vid_wq2zxrypxm{
      width:100%
  }
  .vid_euf3ywxtbl :deep(input) {
        cursor: undefined;
      }
  .vid_euf3ywxtbl{
      width:100%
  }
  .vid_p1o9ji244n{
      margin-right:16px
  }
  .vid_4ep7x2c07v{
      width:100%
  }
  .vid_5ckqr8oxpq{
      width:100%
  }
  .vid_3amjca9l08{
      margin-right:16px
  }
  .vid_wvtox7jkqe{
      width:100%
  }
  .vid_hyw8pv81og :deep(span) {
        cursor: undefined;
      }
  .vid_hyw8pv81og{
      width:100%
  }
  .vid_3rpfavpjpn{
      margin-bottom:0px
  }
  .vid_l38xzzg6dc{
      height:120px
  }
  .vid_iazs2oy50w{
      height:530px;
      overflow-x:auto;
      overflow-y:auto
  }
  .vid_1eoerpwe81{
      margin-right:16px
  }
  .vid_zkvqhsm3md{
      width:100%
  }
  .vid_wsygvgd84b{
      margin-right:16px
  }
  .vid_uxysxsco2y{
      margin-right:16px
  }
  .vid_e3jxf416hx{
      width:100%
  }
  .vid_a9fonyqqx4 :deep(input) {
        cursor: undefined;
      }
  .vid_a9fonyqqx4{
      width:100%
  }
  .vid_m5z5k3lk5k{
      margin-right:16px
  }
  .vid_5y8ochqm2l :deep(input) {
        cursor: undefined;
      }
  .vid_5y8ochqm2l{
      width:100%
  }
  .vid_87uq99a1l8{
      margin-right:16px
  }
  .vid_aokvitshm5 :deep(input) {
        cursor: undefined;
      }
  .vid_aokvitshm5{
      width:100%
  }
  .vid_lwrjgnl5hk{
      width:100%
  }
  .vid_8rjlvcwjsq{
      margin-right:16px
  }
  .vid_5q1g3fyl1w :deep(input) {
        cursor: undefined;
      }
  .vid_5q1g3fyl1w{
      width:100%
  }
  .vid_a8y8q0rvsj{
      width:100%
  }
  .vid_2nv5px7t6t{
      margin-right:16px
  }
  .vid_p459smma70{
      width:100%
  }
  .vid_yibvw5rcmz{
      width:100%
  }
  .vid_sec4mmkdt8{
      margin-right:16px
  }
  .vid_zt2wam5umw :deep(span) {
        cursor: undefined;
      }
  .vid_zt2wam5umw{
      width:100%
  }
  .vid_eevmnclhuk{
      margin-right:16px
  }
  .vid_g16af5f96z{
      margin-bottom:0px
  }
  .vid_71a9kgjal6{
      height:120px
  }



  .vid_cztbzs6qac{
      height:470px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_gguxbzg5lk{
      width:100%
  }
  .vid_yjblciotaj{
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#D9D9D9
  }
  .vid_10nqlbbc7q{
      margin-left:0px;
      padding-top:16px;
      padding-bottom:16px;
      padding-left:0px;
      border-style:none;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_2jra8sxbek{
      padding-top:16px;
      padding-left:0px
  }
  .vid_rwmvgn46dt :deep(span) {
        cursor: undefined;
      }
  .vid_rwmvgn46dt{
      width:100%
  }
  .vid_3ug0covbj2{
      margin-right:16px
  }
  .vid_727os2vxmi :deep(span) {
        cursor: undefined;
      }
  .vid_727os2vxmi{
      width:100%
  }
  .vid_3ekfvlo9bn{
      margin-right:16px
  }
  .vid_q7deknz720{
      width:100%
  }
  .vid_0xb6ud68fm :deep(input) {
        cursor: undefined;
      }
  .vid_0xb6ud68fm{
      width:100%
  }
  .vid_s6uaj61mey{
      margin-right:16px
  }
  .vid_sx8k6cpo4v :deep(input) {
        cursor: undefined;
      }
  .vid_sx8k6cpo4v{
      width:100%
  }
  .vid_3lmpfkqdr6{
      border-bottom-style:none;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_b48tiyy6ef{
      margin-right:16px
  }
  .vid_59pu2k73os{
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_nis2054f9c{
      margin-right:16px
  }
  .vid_aws7k3cemp{
      width:100%
  }
  .vid_do4qk29peu{
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_e0cvsdvjdg{
      padding-left:8px;
      font-weight:600;
      line-height:16px;
      border-left-style:solid;
      border-left-width:4px;
      border-left-color:#3875FF
  }
  .vid_uknumlt3hu{
      margin-left:16px
  }
  .vid_68rzqstn2n{
      width:100%
  }
  .vid_74nuuvmbbh{
      height:800px
  }
  .vid_zcs0tbo049{
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#D9D9D9
  }
  .vid_irr1b95h6c{
      height:600px;
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_2blz3r4b1a{
      width:100%
  }
  .vid_y072heuac7{
      margin-left:0px;
      padding-top:16px;
      padding-bottom:16px;
      padding-left:0px;
      border-style:none;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_ezclclx1pz{
      padding-top:16px;
      padding-left:0px
  }
  .vid_zcxsmd50is :deep(span) {
        cursor: undefined;
      }
  .vid_zcxsmd50is{
      width:100%
  }
  .vid_iirsv4rvqk{
      margin-right:16px
  }
  .vid_ec0kwncf8s :deep(span) {
        cursor: undefined;
      }
  .vid_ec0kwncf8s{
      width:100%
  }
  .vid_n4m1p0myrn{
      margin-right:16px
  }
  .vid_wpwf9x791a{
      width:100%
  }
  .vid_nq30nmdljj :deep(input) {
        cursor: undefined;
      }
  .vid_nq30nmdljj{
      width:100%
  }
  .vid_vn418purbl{
      margin-right:16px
  }
  .vid_zi10to2e7d :deep(input) {
        cursor: undefined;
      }
  .vid_zi10to2e7d{
      width:100%
  }
  .vid_52ux1hwasf{
      margin-bottom:0px;
      padding-bottom:0px;
      border-bottom-style:solid;
      border-bottom-width:1px;
      border-bottom-color:#EBEBEB
  }
  .vid_7om5a7nwqh{
      margin-right:16px
  }
  .vid_7sxps69gsj{
      padding-left:8px;
      font-weight:600;
      line-height:16px;
      border-left-style:solid;
      border-left-width:4px;
      border-left-color:#3875FF
  }
  .vid_jt10cec706{
      margin-left:16px
  }
  .vid_qvb0z2tr72{
      width:100%
  }
  .vid_7l57iwltcr{
      background-color:#F5F6FA;
      position:relative
  }
  .vid_6dwl9cu0n6{
      display:block;
      padding-top:16px;
      padding-right:24px;
      padding-bottom:16px;
      padding-left:24px;
      background-color:#FFFFFF
  }
  .vid_7s8tryyzoc{
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      margin-bottom:16px;
      border-style:none;
      border-color:#FFFFFF
  }
  .vid_5bq6mz9u45{
      display:flex;
      flex-direction:row-reverse;
      flex-wrap:undefined
  }
  .vid_i2ht4ljq1t{
      color:rgba(56, 117, 255, 1);
      border-style:solid;
      border-width:1px;
      border-color:#3875FF
  }
  .vid_chp28ng6fc{
      color:rgba(56, 117, 255, 1);
      border-style:solid;
      border-width:1px;
      border-color:#3875FF
  }
  .vid_pljcwbceg8{
      margin-right:16px;
      color:rgba(56, 117, 255, 1);
      border-style:solid;
      border-width:1px;
      border-color:#3875FF
  }
  .vid_9stxwa9aho{
      margin-right:16px;
      color:rgba(56, 117, 255, 1);
      background-color:#3875FF
  }
  .vid_odo4vs0u4v{
      display:flex;
      flex-direction:row;
      flex-wrap:undefined
  }
  .vid_xt1syxurgf{
      display:flex;
      flex-direction:row;
      flex-wrap:undefined;
      padding-left:8px;
      font-weight:600;
      color:rgba(38, 38, 38, 1);
      font-size:16px;
      line-height:16px;
      border-left-style:solid;
      border-left-width:4px;
      border-left-color:#3875FF
  }
  .vid_9351xbiw30{
      margin-bottom:0px
  }
  .vid_n40jlnry35{
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_6x7tk90404{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_bmnqyezbfq{
      color:rgba(89, 89, 89, 1)
  }
  .vid_n5peq35iuj{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_g82jyamcz8{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_52233otyt0{
      color:rgba(89, 89, 89, 1)
  }
  .vid_n93rd0633v{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_1ssor0vurq{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_lhfelkql3d{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_vwr7kqc9py{
      color:rgba(89, 89, 89, 1)
  }
  .vid_drbshftbfk{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_yy7ygz7zsl{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_fo777grzz5{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_jqkf538iqc{
      color:rgba(89, 89, 89, 1)
  }
  .vid_98zaveb82m{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_rp39n6l74j{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_oneof7p8h9{
      color:rgba(89, 89, 89, 1)
  }
  .vid_ni3wuzf8dg{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_c6ksxvstfk{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_wmn41j4hbl{
      color:rgba(89, 89, 89, 1)
  }
  .vid_bozskhftm7{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_o5bfqj7jfz{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_t7nme1u6ef{
      color:rgba(89, 89, 89, 1)
  }
  .vid_lfs222jmbc{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_inu1u8xb2j{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_iz25xq14ar{
      color:rgba(89, 89, 89, 1)
  }
  .vid_ehfxecvdj8{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_l6f80lgfc0{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_3t63utv5zt{
      color:rgba(89, 89, 89, 1)
  }
  .vid_vw7p6j10s8{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_h2zfzaz75s{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      color:rgba(89, 89, 89, 1);
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_mhnm8f7yh0{
      color:rgba(89, 89, 89, 1)
  }
  .vid_3nmlin0504{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_iu2mbi0cok{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_6a779uw2qq{
      color:rgba(89, 89, 89, 1)
  }
  .vid_ramdiw3ja6{
      height:80px;
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_vt9k7keox1{
      color:rgba(89, 89, 89, 1)
  }
  .vid_hs270xpe2e{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_xvc0yzi4tp{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_q0o2y1xjmq{
      color:rgba(89, 89, 89, 1)
  }
  .vid_tc9o39fw9g{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_0659nxtb6k{
      color:rgba(89, 89, 89, 1)
  }
  .vid_1616d5jzce{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_ikzr85lpk8{
      height:80px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_rzrp8snlry{
      height:40px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_sm9wacp2g0{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_o0q7cydece{
      color:rgba(89, 89, 89, 1)
  }
  .vid_2zbigasesr{
      height:80px;
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_n2p43k31dy{
      color:rgba(89, 89, 89, 1)
  }
  .vid_q740vgdj6d{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      padding-top:8px;
      padding-right:16px;
      padding-bottom:8px;
      background-color:rgba(250, 250, 250, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_qjhx10tm08{
      color:rgba(89, 89, 89, 1)
  }
  .vid_0jel16b4ak{
      height:80px;
      display:flex;
      flex-direction:row-reverse;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:0px;
      margin-right:0px;
      margin-bottom:0px;
      margin-left:0px;
      padding-top:8px;
      padding-bottom:8px;
      padding-left:16px;
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_nwvgdzh6je{
      height:100%;
      display:block;
      margin-top:16px;
      background-color:#FFFFFF
  }
  .vid_ibrandtx3p{
      display:block;
      padding-right:24px;
      padding-left:24px;
      background-color:#FFFFFF
  }
  .vid_ibrandtx3p:active{
      width:100%
  }
  .vid_ibrandtx3p:focus{
      width:100%
  }
  .vid_ibrandtx3p:hover{
      width:100%
  }
  .vid_s5807dlal1{
      display:flex;
      align-items:center;
      flex-wrap:undefined
  }
  .vid_0f7nek1t0r{
      display:flex;
      flex-direction:row;
      justify-content:flex-end;
      flex-wrap:undefined
  }
  .vid_gbu0a76kp6{
      margin-left:16px
  }
  .vid_j49xrv5ndx{
      padding-left:8px;
      font-weight:600;
      font-size:16px;
      line-height:16px;
      border-left-style:solid;
      border-left-width:4px;
      border-left-color:#3875FF
  }
  .vid_miktasukf5{
      display:block;
      border-style:none
  }
  .vid_9f8xx1jvbg{
      padding-top:8px
  }
  .vid_za6w2sts16{
      height:48px;
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      background-color:rgba(245, 245, 245, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_xf0gg7gdc8{
      margin-left:24px
  }
  .vid_lws3y9xg07{
      font-weight:600;
      font-size:18px
  }
  .vid_bl8177v85e{
      height:48px;
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      background-color:rgba(245, 245, 245, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_b0rcrbhx03{
      margin-left:24px
  }
  .vid_c23z2h41bs{
      font-weight:600;
      font-size:18px
  }
  .vid_qa4w1j2kx2{
      height:48px;
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      background-color:rgba(245, 245, 245, 1);
      border-style:solid;
      border-width:1px;
      border-color:#D9D9D9
  }
  .vid_2np2mdeca7{
      margin-left:24px
  }
  .vid_thmizi8his{
      font-weight:600;
      font-size:18px
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #f5f5f5;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #262626;
    border-bottom:1px solid #ebebeb;
    padding: 8px 16px;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #ebebeb;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #ebebeb;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #ebebeb;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #ebebeb;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #ebebeb;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #ebebeb;
      width: 1px;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #595959;
    border-bottom:1px solid #ebebeb;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_h4ydkfxkhj :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_h4ydkfxkhj :deep(.table-striped-even) td {
    background-color: #FFFFFF;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #ebebeb;
  }
  .vid_h4ydkfxkhj :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #ebebeb;
  }
  .vid_h4ydkfxkhj{
      height:500px;
      overflow-x:auto;
      overflow-y:auto;
      padding-top:24px
  }
  .vid_h4ydkfxkhj:active{
      width:100%
  }
  .vid_h4ydkfxkhj:focus{
      width:100%
  }
  .vid_h4ydkfxkhj:hover{
      width:100%
  }
  .vid_d10ddmizcp{
      display:block
  }
  .vid_4ico5ejg3q{
      width:100%
  }
  .vid_tfdys2yv27{
      width:100%
  }
  .vid_qz4a31s4ec{
      width:100%
  }
  .vid_dc6qyecxin{
      width:100%
  }
  .vid_lejnr9eg5j{
      width:100%
  }
  .vid_5kc43qdc7l{
      background-color:#3875FF;
      box-shadow:0px 0px 0px 0px
  }
  .vid_o22b1s6q8s{
      margin-left:16px
  }
  .vid_55422xa0a6 :deep(input) {
        cursor: undefined;
      }
  .vid_55422xa0a6{
      width:100%
  }
  .vid_nl8vhqj1u2{
      width:100%
  }
  .vid_i7ag41r0vp{
      display:block
  }
  .vid_r8t02dukyy{
      background-color:#FFFFFF
  }
  .vid_r8t02dukyy:active{
      width:100%
  }
  .vid_r8t02dukyy:focus{
      width:100%
  }
  .vid_r8t02dukyy:hover{
      width:100%
  }
  .vid_24dspn722w{
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      padding-bottom:16px
  }
  .vid_o09mfd0obz{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined
  }
  .vid_24ramrd9fn{
      background-color:#3875FF
  }
  .vid_mg5vvxdag5{
      margin-left:16px;
      color:rgba(56, 117, 255, 1);
      border-style:solid;
      border-width:1px;
      border-color:#3875FF
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #3875FF;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #FFFFFF;
    border-bottom:1px solid #EBEBEB;
    padding: 8px 16px;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #EBEBEB;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #EBEBEB;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #EBEBEB;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #EBEBEB;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #EBEBEB;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #EBEBEB;
      width: 1px;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #262626;
    border-bottom:1px solid #EBEBEB;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_xrk0mz30yy :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_xrk0mz30yy :deep(.table-striped-even) td {
    background-color: #F8FAFC;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #EBEBEB;
  }
  .vid_xrk0mz30yy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #EBEBEB;
  }
  .vid_xrk0mz30yy{
      width:100%
  }
  .vid_xrk0mz30yy:active{
      width:100%
  }
  .vid_xrk0mz30yy:focus{
      width:100%
  }
  .vid_xrk0mz30yy:hover{
      width:100%
  }
  .vid_921batvifr{
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      padding-bottom:16px
  }
  .vid_6wbmxsixow{
      display:flex;
      flex-direction:row;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined
  }
  .vid_aw4ll60tme{
      margin-right:16px;
      background-color:#3875FF
  }
  .vid_tyesobnast{
      color:rgba(56, 117, 255, 1);
      border-style:solid;
      border-width:1px;
      border-color:#3875FF
  }
  .vid_ki91nriw5u{
      margin-left:16px;
      color:rgba(56, 117, 255, 1);
      border-style:solid;
      border-width:1px;
      border-color:#3875FF
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #3875FF;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #FFFFFF;
    border-bottom:1px solid #EBEBEB;
    padding: 8px 16px;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #EBEBEB;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #EBEBEB;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #EBEBEB;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #EBEBEB;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #EBEBEB;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #EBEBEB;
      width: 1px;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #262626;
    border-bottom:1px solid #EBEBEB;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_ea0vg4m7vo :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_ea0vg4m7vo :deep(.table-striped-even) td {
    background-color: #F8FAFC;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #EBEBEB;
  }
  .vid_ea0vg4m7vo :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #EBEBEB;
  }
  .vid_ea0vg4m7vo{
      overflow-x:scroll;
      overflow-y:scroll
  }
  .vid_ea0vg4m7vo:active{
      width:100%
  }
  .vid_ea0vg4m7vo:focus{
      width:100%
  }
  .vid_ea0vg4m7vo:hover{
      width:100%
  }
  .vid_zk4h5g3q5i{
      box-shadow:0px 0px 0px 0px
  }
  .vid_qbnekcpmkl{
      height:100%;
      display:block;
      padding-top:16px;
      padding-right:24px;
      padding-bottom:16px;
      padding-left:24px;
      background-color:#FFFFFF
  }
  .vid_uior7kmmpk{
      width:100%
  }
  .vid_5rxlkyf5s2{
      display:flex;
      flex-direction:row;
      justify-content:flex-end;
      flex-wrap:undefined
  }
  .vid_yssa4zftwp{
      width:60px;
      color:rgba(56, 117, 255, 1);
      border-style:none
  }
  .vid_opz1fvfk0o{
      font-weight:600;
      font-size:16px
  }
  .vid_blxi5mtpep{
      margin-top:16px
  }
  .vid_ucdhgbwfk3{
      width:100%;
      border-color:#CCCCCC
  }
  .vid_wzwralami7{
      height:800px;
      overflow-y:auto;
      box-shadow:0px 0px 0px 0px
  }
  .vid_rzym3dfyuw :deep(span) {
        color: undefined;
      }

  .data-analysis {
      padding: 20px 0;
    }

    .data-analysis > *:not(:last-child) {
      margin-bottom: 20px;
    }

    .data-analysis .header {
      display: flex;
      justify-content: space-between;
    }

    .data-analysis .header .title {
      font-weight: 500;
      font-size: 16px;
      border-left: 8px solid #1890ff;
      height: 35px;
      line-height: 35px;
      text-indent: 8px;
    }

    .first-row .first-chart-title {
      font-weight: 500;
      font-size: 17px;
      display: flex;
      width: 70%;
      margin: 0 auto 10px;
    }

    .first-row .first-chart-title > * {
      flex: 1;
    }

    .first-row .chart {
      height: 200px;
    }

    .other-row .chart-title {
      font-weight: 500;
      font-size: 14px;
      display: flex;
      justify-content: space-between;
    }

    .other-row .chart {
      height: 260px;
    }

    .mr10 {
      margin-right: 10px;
    }
    .ml10 {
      margin-left: 10px;
    }

  :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
   padding: 0;
  }
</style>